【问题标题】:ASP Checkbox trigger an event in Javascript whenever it is clicked每当单击 ASP Checkbox 时,都会触发 Javascript 中的事件
【发布时间】:2017-01-15 04:29:32
【问题描述】:
<asp:CheckBox runat="server" ID="checkbox1" />   

每当我选中或取消选中我的 asp 复选框时,它都需要在 javascript 中触发一个事件,但似乎没有触发 .click 函数。 .click 事件是不是错了?

$(document).ready(function () {
    $("#checkbox1").click(function (e) {
        if (this.checked) {
            //do something
        }
        else {

        }
    });
});

【问题讨论】:

  • 检查您是否使用母版页然后 id checkbox1 将不起作用,您必须给元素一些类并在 javascript 中使用该类选择器。

标签: javascript jquery asp.net checkbox


【解决方案1】:

你可能需要改变

$("#checkbox1").click(function (e) {

进入

$("#<%= checkbox1.ClientID %>").click(function (e) {

asp.net 重命名控件的 ID 以确保没有重复项。如果您检查 HTML 源代码,可能看起来像这样:ContentPlaceHolder1_checkbox1。这就是 jQuery 找不到它的原因。

【讨论】:

    【解决方案2】:

    我希望它对你有用。 对于动态创建的element,您必须使用event delegation,如果您想通过属性进行选择,您可以使用attribute equals selector

    $(document).on("change", "input[name='member']", function () {
                  alert("CheckBox Changed.");
                  if (this.checked) {alert("CheckBox checked.");}
                  else{alert("CheckBox not checked.");}
              });
    

    $(document).on("change", "$('#<%=checkbox1.ClientID%>')", function () {
                  alert("CheckBox Changed.");
                  if (this.checked) {alert("CheckBox checked.");}
                  else{alert("CheckBox not checked.");}
              });
    

    这是链接,并通过此链接 JS Fiddler

    【讨论】:

      猜你喜欢
      • 2016-10-11
      • 1970-01-01
      • 2012-09-12
      • 1970-01-01
      • 2019-10-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-11
      相关资源
      最近更新 更多