1

我写了这段代码。但它适用于 html 复选框和 txtbox。我想用 asp.net txtbox 和 checkbox.how 做同样的功能?

<script type="text/javascript">
    $(document).ready(function() {
    var checkbox = $('#notify');
        var textfield = $('#notifyemailaddress');
        checkbox.click(function() {
            if (checkbox.is(':checked')) {
                textfield.removeAttr("disabled");
                textfield.removeClass("email");
            }
            else {
                textfield.attr("disabled", "disabled");
                textfield.addClass("email");
            }
        });
    });
</script>
<div>
                               <input type="checkbox"  id="notify"/>
                              <label for="notify">Notify</label>
                              <input type="text" id="notifyemailaddress" disabled="disabled" class="email" style="width:25%" /> 
                             </div>
4

2 回答 2

1

您需要在 asp.net 上找到正确的 id,为此您可以使用您的 asp.net 控件的ClientID。所以你写了类似的东西

 var checkbox = $('#<%=notify.ClientID%>');

其中 <%=notify.ClientID%> 是打印控件的最终渲染 id,输入看起来像

<asp:CheckBox runat="server" id="notify" />

在 asp.net 4 上,您还可以使用静态 id 甚至避免 ClientID,但请注意不要在同一页面上多次使用相同的控件 id。您可以阅读更多信息:http: //msdn.microsoft.com/en-us/library/1d04y8ss.aspx

于 2010-11-03T08:10:32.967 回答
0

如果您选中服务器控件名称是 notifyemailaddress 然后使用这个:

var textfield = $('#<%= notifyemailaddress.ClientID %>');
于 2010-11-03T08:11:09.193 回答