取消选中多个复选框后从数组中删除值

时间:2013-01-10 22:45:52

标签: javascript

$('.options').click(function() {
            var selectedItems = new Array();
            $("input:checkbox:checked").each(function() {selectedItems.push($(this).val());});
                var data = selectedItems.join(',');
            $("#opts").val(data);
        });

我有这个函数将复选框中的值插入到数组中。目前工作正常。但是在提交表单时,值会保留在数组中,但问题是取消选中复选框时它会保留在数组中,如果我再次检查同一个框,则会再次添加该值。有什么帮助吗?

1 个答案:

答案 0 :(得分:0)

您可以检查以确保在推送

之前该值尚未存在于数组中
if(!($.inArray($(this).val(), selectedItems))){
  selectedItems.push($(this).val());});
}