假设我有5个通过HTML手动创建的复选框,所有复选框都具有属性;名称,类型和值。选中所有这些复选框都会触发一个事件,该事件允许启用按钮。 (下面的代码)

    $('input[type="checkbox"]').click(function() {
        var $this = $(this);
        if ($this.is(':checked')) {
            $("#deleteModalTrigger").prop("disabled",false);
        } else {
            $("#deleteModalTrigger").prop("disabled",true);
        }
    });


现在,我通过javascript创建另一个复选框,并将其附加到表中的一行。它显示在视图中,但是即使选中它,也不会触发上面的代码。

            var column1 = document.createElement('td');
            var cb1 = document.createElement('input');
            cb1.type="checkbox";
            cb1.name="foo";
            cb1.value="Something-cbvalue-0";
            column1.setAttribute("rowspan","2");
            column1.appendChild(cb1);
            row.appendChild(column1);


任何帮助表示赞赏!谢谢。

最佳答案

因为复选框是在dom加载后动态添加的

$('input[type="checkbox"]').click(function() {


此点击事件未绑定到新添加的元素
尝试使用

$(document).on('click','input[type="checkbox"]',function() {

09-25 16:35