我试图通过比较两个数组来检查页面上的复选框。如果两个数组中都存在一个值,则选中 id 与匹配值相同的复选框。(该数组包含 Checkbox 元素的 Id。)即使该值存在于两个复选框的检查中也不起作用。
下面是带有 HTML 和 jquery 的 jsfiddle 的链接
我试图通过比较两个数组来检查页面上的复选框。如果两个数组中都存在一个值,则选中 id 与匹配值相同的复选框。(该数组包含 Checkbox 元素的 Id。)即使该值存在于两个复选框的检查中也不起作用。
下面是带有 HTML 和 jquery 的 jsfiddle 的链接
首先它应该$('.divPrintDetailed table')
代替$(#divPrintDetailed table')
和迭代,第idArray
一个参数是索引,第二个是元素。
JS:-
function CheckboxSelect() {
var idArray = [];
var idContainerArray = [];
idContainerArray[0] = "tbl-10-486011";
idContainerArray[1] = "tbl-10-486013";
idContainerArray[2] = "tbl-10-486016";
$('.divPrintDetailed table').each(function (i, e) {
idArray.push($(e).attr('id'));
});
//alert(idArray.length);
$.each(idArray, function (index, el) {
alert(el.slice(4));
if ($.inArray(el, idContainerArray) != -1) {
$('#' + el.slice(4)).prop("checked", "checked");
}
});
}
$('#btnSubmit').click(function () {
CheckboxSelect();
});
HTML:-
<div class="divPrintDetailed">
<table id="tbl-10-486011" data-ordernum="0">
<tr> <td>
<input class="containerToCopy" id="10-486011" type="checkbox"> </td> </tr>
</table>
<table id="tbl-10-486012" data-ordernum="1">
<tr> <td> <input class="containerToCopy" id="10-486012" type="checkbox"> </td> </tr>
</table>
<table id="tbl-10-486013" data-ordernum="2">
<tr> <td> <input class="containerToCopy" id="10-486013" type="checkbox"> </td> </tr>
</table>
<table id="tbl-10-486014" data-ordernum="3">
<tr> <td> <input class="containerToCopy" id="10-486014" type="checkbox"> </td> </tr>
</table>
<table id="tbl-10-486015" data-ordernum="4">
<tr> <td> <input class="containerToCopy" id="10-486015" type="checkbox"> </td> </tr>
</table>
<table id="tbl-10-486016" data-ordernum="5">
<tr> <td> <input class="containerToCopy" id="10-486016" type="checkbox"> </td> </tr>
</table>
</div>
<button type="button" id="btnSubmit" >Click Me!</button>