簡體   English   中英

在ASP.NET/C#中檢查復選框服務器控件時隱藏文本框-使用Jquery或Javascript

[英]Hide a TextBox on checking a checkbox server control in ASP.NET/C# - using Jquery or Javascript

我一直試圖隱藏一個文本框,如果再次選中一個復選框則顯示該文本框,如果未選中該復選框,則源代碼如下所示。

   <asp:CheckBox ID="ShortStoryCheckBox" runat="server" />
<asp:TextBox ID="LeadTextBox" runat="server" Height="77px" TextMode="MultiLine" 
        Width="370px"></asp:TextBox>

所以我的目的是如果選中ShortStoryCheckBox,則隱藏LeadTextBox。 如果再次取消選中,則必須顯示它。 為了實現這一點,我嘗試了下面的JQuery。 我使用的ID下方是從瀏覽器的源視圖獲取的HTML ID。

<script type="text/javascript">
    $("#ctl00_PlaceHolderMain_Home_ShortStoryCheckBox").change(function () {
        if (this.checked) {
            $("#ctl00_PlaceHolderMain_Home_LeadTextBox").hide();
        }
        else {
            $("#ctl00_PlaceHolderMain_Home_LeadTextBox").show();
        }
    });
</script>

但是它不起作用,有人可以幫我怎么做嗎? 還是我要去哪里錯了? 任何其他建議也可以幫助實現這一目標。

嘗試點擊和支持以及一些代碼重構

<script type="text/javascript">

$(document).ready(function(){

    $("#<%= ShortStoryCheckBox.ClientID %>").click(function () {
        if ($(this).prop("checked")===true) {
            $("#<%= LeadTextBox.ClientID %>").hide();
        }
        else {
             $("#<%= LeadTextBox.ClientID %>").show();
        }
    });
 });
</script>

工作jsfiddle: http : //jsfiddle.net/patelmilanb1/AJvJD/

$(document).on("change", "#ShortStoryCheckBox", function () {
    if ($(this).is(":checked")) {
        $("#LeadTextBox").hide();
    } else {
        $("#LeadTextBox").show();
    }
});

第二種方法:

$(document).on("change", "#ShortStoryCheckBox", function () {
    $("#LeadTextBox").toggle();
});

注意:您可以將類名稱分配給文本框和復選框,以簡化使用

您必須使用ShortStoryCheckBoxLeadTextBox的ClientID,它獲取由ASP.NET生成的HTML標記的控件ID。

$("#<%=ShortStoryCheckBox.ClientID%>").change(function(){
 if($(this).is(":checked"))
 {
    $('#<%= LeadTextBox.ClientID %>').hide();
 }
 else
 {
    $('#<%= LeadTextBox.ClientID %>').show();
 }
});

您可以使用這種方式。

$(document).ready(function() { 
  $('#<%=ShortStoryCheckBox.ClientID%>').bind('click', function() {
    if($(this).is(":checked")) {
      $("#<%=LeadTextBox.ClientID%>").show();
    } else {
      $("#<%=LeadTextBox.ClientID%>").hide();
    }
  });
}); 

我希望這段代碼對您有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM