我可以点击tr
它,它会选中复选框。然后,我可以再次单击tr
它,它将取消选中该复选框。但是,如果我尝试tr
第三次(或更多)单击相同的内容,则该脚本将不再有效。我已经尝试了这个脚本的几个版本,prop()
而不是使用 ``attr(),但它仍然表现出相同的行为。为什么?
HTML:
<tr onclick="checkBox('ID')" id="recordID">
<td>
<input type="checkbox" name="myRecords[]" id="myRecordsID" value="ID">
</td>
</tr>
jQuery:
function checkBox(ID) {
$(document).on("click",'#record'+ID,function(){
$(document).on("click",'input#myRecords'+ID,function(e){
e.stopPropagation();
});
var ischecked = $('input#myRecords'+ID).is(":checked");
if(ischecked) {
$('input#myRecords'+ID).removeAttr("checked");
} else {
$('input#myRecords'+ID).attr("checked", "checked");
}
});
});