【发布时间】:2016-07-19 10:35:04
【问题描述】:
我有一个这样的复选框:
while($userRow=$resultForUsers->fetch_assoc()){
$nameOfUser=$userRow['users_name'];
$userId=$userRow['user_facebook_id'];
$userFBPicture=$userRow['users_picture'];
echo "
<tr class='tr-data-users'>
<td class='text-center'>
<input type='checkbox' class='checkbox' onclick='if(this.checked){selo(this.value)}else{izbaci(this.value)}' value=$userId>
</td>
因此,对于我数据库中的每个用户,我都有一个带有其 id 值的复选框。我需要一个数组中所有已检查用户(即复选框)的 id。我是这样做的:
<input type='checkbox' class='checkbox' onclick='if(this.checked){put(this.value)}else{remove(this.value)}' value=$userId>
var niz={};
var index=0;
function put(o){
niz[index++]=o;
console.log(niz);
}
所以,console.log 现在显示所有选中复选框的 ID。我想要做的是,如果未选中复选框,则从数组中删除该 id(即 chechbox 值)。我试过这样:
onclick='if(this.checked){put(this.value)}else{remove(this.value)}'
var niz={};
var index=0;
function put(o){
niz[index++]=o;
console.log(niz);
remove(o,niz);
}
function remove(o,niz){
if($.inArray(o,niz)){
console.log('radim');
var indexNiza= $.inArray(o,niz);
niz= $.grep(niz,function(a,o){
return (a!=o);
});
}
}
如您所见,else 部分应在未选中复选框并从数组中删除该 id 时处理,但它不起作用。非常感谢您对此的帮助。
【问题讨论】:
标签: javascript jquery arrays checkbox