我发现这个answer是我想要做的部分,当人们超过某个限制时取消选中复选框。
现在我想修改它,以便在选中/取消选中复选框时,在字符串中添加和删除复选框的值。
我的更新代码如下所示:
var filterURL = '';
var checked = [],
$check = $('.accordion-list input').change(function() {
checked.push(this);
checked = $(checked);
checked.prop('checked', false).slice(-6).prop('checked', true);
if($(this).is(':checked')) {
filterURL += ($(this).val());
}
else {
filterURL = filterURL.replace($(this).val(),'');
}
alert(filterURL);
});
这很好用,直到我开始尝试取消选中复选框 - 它们不会取消选中,并且值会不断附加到字符串中。
答案 0 :(得分:1)
$('.checkboxes input').change(function() {
var filterURL = $('.checkboxes input:checked').map(function(){
return $(this).val();
}).get().join('');
$('#output').html(filterURL);
});
答案 1 :(得分:0)
var vals = [];
$('input:checkbox:checked').each(function() { vals.push($(this).val()); });