如何使用JQuery查找表中的复选框?

时间:2016-05-21 15:28:10

标签: javascript jquery

我有一个表,每行的第一列只有复选框。我想找到用Jquery点击的复选框(更改事件)。我试试这个但没有出现:

 $('#table tbody tr td input[type=checkbox]').change(function () {
            if (this.checked) {
                alert("true");//for testing purposes
            }
            alert("false");
        });

如何获得点击元素?

 <table id="table" class="table table-hover table-striped table-bordered">
                    <thead>
                        <tr>
                            <th class="col-lg-1">Sıra No.</th>
                            <th class="col-lg-3">İsim/No</th>
                            <th class="col-lg-6">Koordinat Bilgisi</th>
                            <th class="col-lg-2">Mahalle/Kapı</th>
                        </tr>
                    </thead>
                    <tbody id="tableBody">
                    </tbody>
                </table>

编辑:我的桌子主体在开头是空的。点击按钮后,我正在填充表格。每行第一列都有一个用普通javascipt创建的输入元素。

 var indexCheckbox = document.createElement('input');
            indexCheckbox.type = "checkbox";
            indexCheckbox.name = "indexCheckbox";
            indexCheckbox.value = i;
            indexCheckbox.id = "indexCheckbox_" + i;

1 个答案:

答案 0 :(得分:1)

事件委托方法只将一个事件处理程序附加到一个元素,即复选框,并且事件只需要向上冒一个级别(从单击的复选框到#tableBody):

$('#tableBody').on("change", "input[type=checkbox]", function () {
    if (this.checked) {
       alert("true");//for testing purposes
    }else{
       alert("false");
    }
});

结果: https://jsfiddle.net/pLrk1vrf/