我有一个代码,我在其中检查复选框并将值附加到网址。 我只能检查一个时能够附加值。但是当我检查多个框时,它只附加最新选中的复选框值。我想要检查多个复选框。我想插入用逗号分隔的多个复选框值
以下是代码
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
</head>
<body>
<input type="checkbox" name="check" value="one">one<br>
<input type="checkbox" name="check" value="two">two<br>
<script>
$('input[type=checkbox').change(function(){
window.location.hash = 'check=' + $(this).val();
});
</script>
</body>
</html>
请帮我纠正我的代码,在url中添加多个复选框值
答案 0 :(得分:0)
保留复选框的缓存,以便再次使用。在change
事件处理程序函数中,在map()
和get()
的帮助下,根据选中的复选框过滤复选框,并将每个值的值映射到数组。
使用您想要的字符加入值,如果有值,请将其与'check='
$checkboxes = $('input[type=checkbox');
$checkboxes.change(function(){
var values = $checkboxes.filter(':checked').map(function(){
return this.value;
}).get().join(",");
window.location.hash = values ? 'check=' + values : '';
});