我可以轻松捕获复选框的点击事件,如下所示:
<input type="checkbox" id="checkbox1" />
$('#checkbox1').change(function () {
if (this.checked) {
//Do stuff
}
});
另一方面,我在 AJAX 回调(在 jQuery DataTable 中)上创建了一个复选框作为 HTML,并且无法捕获同一元素的单击事件:
//...
"ajaxSource": "/Student/GetStudents",
"fnServerData": function (sSource, aoData, fnCallback) {
aoData.push({ "name": "all", "value": all });
$.getJSON(sSource, aoData, function (json) {
fnCallback(json);
$("div.toolbar").html('<input type="checkbox" id="checkbox1" /> Get all records');
});
},
获取 HTML 字符串中复选框值的最合适方法是什么?
最佳答案
更改事件监听器是在当前存在的所有 DOM 元素上创建的,因此当您添加新复选框时,更改方法不会注册。将您的代码更改为此。
$(document).on('change','#checkbox1',function() {
//stuff
});
关于javascript - 无法捕获 HTML 字符串中元素的单击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39858004/