我有一个在运行时使用 for 循环生成的复选框,现在我想为每个复选框附加选中事件...如何在 jquery 中实现相同的事件。
我正在使用表格..td..来添加复选框。
<script>
var genTable = "<table border='1' style='border-collapse:collapse' cellpadding='5' width='100%'><thead><tr><td><input type='checkBox' id='mainCheck' /></td><td>ID</td><td>ArticleTitle</td><td>ArticleDate</td></tr></thead>";
for (i = 0; i < result.length; i++) {
if (result[i].IsImageAvailable == "TRUE") {
iChecked = "";
}
else {
iChecked = "disabled = disabled";
}
genTable += "<tr><td width='2%'>
<!--Here is my checkBox on which i want to attach checked event-->
<input type='checkBox' id='chkBox" + i + "' onchange='FillSecondGrid(" + result[i].ArticleID + ")' />
</td><td width='5%'>" + result[i].ArticleID + "</td><td>" + result[i].ArticleTitle + "</td><td width='5%'>" + result[i].ArticleDate + "</td></tr>";
}
genTable += "</tbody></table>";
document.getElementById("gridFirst").innerHTML = genTable;
</script>
最佳答案
当您在 script
标记中生成复选框标记时,您只需在复选框生成后添加 onchange
事件即可:
<script>
// .. checkbox generation here ..
$('table').find('input[type=checkbox]').change(function () { /* do things on change here */ });
</script>
或者,也可以使用 .on
在文档就绪的所有复选框元素上:
$(function () {
// on document ready..
$('table input[type=checkbox]').on('change', function() { /* do things on change here */ });
}
.on
方法将捕获文档准备好后创建的任何新复选框(以及已经存在的复选框)并附加您的 onchange
事件。
关于jquery - 使用 JQuery 在复选框上动态附加选中事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7125532/