每一行都有一个复选框。我有一个按钮,可以删除选中复选框的所有行。为此,我必须获取选中复选框的行的 ID。我编写了以下代码。但不工作。请大家帮帮我..
按钮代码:<a class="row-delete" align="left" onclick="deleteItem()"/>
function deleteItem(){
if (confirm("Are you sure you want to delete?")){
$(":checkbox").change(function() {
var notChecked = [], checked = [];
$(":checkbox").map(function() {
this.checked ? checked.push(this.id) : notChecked.push(this.id);
});
alert("checked: " + checked);
});
deleteAll(checked,0);
}
}
上面的代码有什么问题吗?
最佳答案
您在 deleteItem
方法中注册了一个 change
事件处理程序,这不是必需的,您只需使用 .each() 遍历复选框并更新所需的数组
此外,最好使用 .each()
而不是 .map()
,因为您不返回任何值
function deleteItem(){
if (confirm("Are you sure you want to delete?")){
var notChecked = [], checked = [];
$(":checkbox").each(function() {
if(this.checked){
checked.push(this.id);
} else {
notChecked.push(this.id);
}
});
alert("checked: " + checked);
deleteAll(checked,0);
}
}
关于javascript - 单击按钮获取列表中选中复选框的 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18953531/