Javascript 使用jQuery根据复选框check和uncheck值从数组中推送和弹出数据

Javascript 使用jQuery根据复选框check和uncheck值从数组中推送和弹出数据,javascript,jquery,Javascript,Jquery,var listvalues=[] $('.check')。在('change',function()上{ var val=this.checked?this.value:“”; listvalues.push(val) $('#show').html(列表值); }); 1. 2. 3. 4. 您可以使用listvalues=$('.check:checked').toArray().map(x=>x.value)获取所有选中的值,而不是从数组中推送和pop值并显示它 $('.check:c

var listvalues=[]
$('.check')。在('change',function()上{
var val=this.checked?this.value:“”;
listvalues.push(val)
$('#show').html(列表值);
});

1.
2.
3.
4.

您可以使用
listvalues=$('.check:checked').toArray().map(x=>x.value)获取所有选中的值,而不是从数组中推送
pop
并显示它

$('.check:checked')
将只返回
.check
已选中的
项。然后
.toArray()
jquery
对象转换为
array
&使用
.map(x=>x.value)
仅从选中的元素中获取值

var listvalues=[]
$('.check')。在('change',function()上{
listvalues=$('.check:checked').toArray().map(x=>x.value).join(',');
$('#show').html(列表值);
});

1.
2.
3.
4.

要删除,可以使用
过滤器
排除未选中的项目。我不确定你想用不同的div实现什么,请解释一下

var listvalues=[]
$('.check')。在('change',function()上{
如果(选中此项){
listvalues.push(this.value);
}
否则{
listvalues=listvalues.filter(item=>item!=this.value);
}
$('#show').html(listvalues.sort());
});

1.
2.
3.
4.

是的,这很好,但是我有没有办法为每个选中的复选框创建单独的div,因为在这里我的数据被附加,就像没有空格一样,你可以使用
。join(',')
在数组中附加值,分隔符为
。但是有什么方法可以为每个选中的复选框创建单独的div,因为在这里我的数据被附加,就像没有space@AuroraEugene这是我想理解的部分。如何将它们分开?复选框之间还是输出数据之间有更多空间?可能会创建一个您正在寻找的虚拟输出。就像数据之间应该有空间一样