javascript - 动态添加点击事件到复选框,仅适用于第一个复选框JQUERY

标签 javascript jquery asp.net

所以我正在使用几个 ascx,每个控件上都有不同的复选框区域。 我原来用的是

 $('[type=checkbox]').click ( function(){ code });

一开始它就完成了这项工作。但是当我添加另一个控件(也使用复选框)时,该函数也会触发其他复选框,因此我将 js 升级为

 $('#chck').click(function(){ code });

但是这样,它只会为该列表中的第一个复选框触发一个事件。我怎样才能让它触发所有点击?

我也尝试过这个:

 $('#chck').each(function(){ $(this).click({ function() { code }); });

这也只适用于第一个

这是我的 ascx 页面示例:

 <asp:Repeater ID="contacts" runat="server">
            <ItemTemplate>
                <tr>
                    <td>
                        <input type="checkbox" id="chck" />
                    </td>
                  .....
                 </tr>
             </ItemTemplate>
  </asp:Repeater>

这是我的 JS 代码段

    $(document).ready(function(){
       $("#chck").each(function () {
           $(this).click(function () { onchange($(this)); });
       });
    });
    function onchange(checkbox) {
    // adds contact to list
    }

最佳答案

id 必须是唯一的。使用类来代替:

<input type="checkbox" class="chck" />
$('.chck').click(function(){ code });

关于javascript - 动态添加点击事件到复选框,仅适用于第一个复选框JQUERY,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15300183/

相关文章:

javascript - 修改HighCharts中tickPositions的大小

c# - PKCS#11 在本地主机上工作,但它不在实时 Web 服务器(客户端计算机)上工作

c# - 运行示例 MVC 项目时需要身份验证

java - Rhino:限制可以从 JavaScript 访问的 Java 包

javascript - 如何使用jquery在两个不同的地方检查和取消检查具有相同名称的复选框的值?

javascript - 如何使用 Bootstrap 和 jQuery 在输入字段中显示错误图标?

JavaScript/jQuery 或每隔几秒更改文本的东西

c# - 临时隐藏或禁用主导航菜单

javascript - firebase 数据检索 - 如何获取数据?

javascript - 通过几个选定的选项访问多个选择上的特定属性