2016-03-07 99 views
1

我正在使用JavaScript代碼。而不是隱藏。我想如果div是可見的,然後隱藏在頁面加載。點擊按鈕應該可見。但目前它正在做相反的事情。使用顯示或顯示在JavaScript

<script type="text/javascript"> 
    $(document).ready(function() { 
     $("#lnkbtn").click(function() { 
      if ($('#divreg').is(":hidden")) { 
       $('#divreg').show(500); 
       document.getElementById('lnkbtn').innerHTML = "Hide"; 
      } else { 
       $("#divreg").hide(500); 
       document.getElementById('lnkbtn').innerHTML = "Show"; 

      } 

     }); 
    }); 
</script> 

HTML:

<asp:Button ID="lnkbtn" runat="server" Text="Additional Details" CausesValidation="False" OnClientClick="return false;" /> 
    <div id="divreg"> 
    <p> Some content here.. </p> 
    </div> 
+0

顯示你的HTML代碼或使小提琴。 – Sumanta736

+0

因爲你使用jQuery代替部分代碼 - 爲什麼不使用$('#lnkbtn')。html('隱藏')?或$('#lnkbtn')。text('Hide') – gavgrif

+0

https://jsfiddle.net/pqho3tvg/3/ – Zaki

回答

0
在你的提琴

,你正在使用"display:none"爲CSS隱藏的div,但你檢查正在使用:hidden這意味着它永遠不會真正的考驗;您需要將css更改爲"visibility:hidden",並且按預期工作

0

請參閱此fiddle

您可以隱藏它的jQuery load,檢查它是否是可見的隱藏:

if ($('#divreg').is(":visible")) { 
    $("#divreg").hide(); 
} 

然後在您的click事件進行隱藏/顯示:

$("#lnkbtn").click(function() { 
    if ($('#divreg').is(":hidden")) { 
    $('#divreg').show(500); 
    $('#lnkbtn').val("Hide"); 
    } else { 
    $("#divreg").hide(500); 
    $('#lnkbtn').val("Show"); 

    } 

});