返回后未取消选中复选框
Checkbox not getting uncheck after going back
我有一个代码,其中我使用了一些复选框,点击它们时,我会在url中添加带有哈希的复选框值,但当我返回或按下后退按钮时,url会发生更改,但复选框仍处于选中状态。请按照以下检查代码
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
</head>
<body>
<script type="text/javascript">
$(document).ready(function() {
$checkboxes = $('input[type=checkbox]');
$checkboxes.change(function(){
window.location.hash = 'check=' + $checkboxes.filter(':checked').map(function(){
return this.value;
}).get().join(",");
//console.log(window.location.hash);
}); });</script>
<input type="checkbox" name="check" value="one">one<br>
<input type="checkbox" name="check" value="two">two<br>
<input type="checkbox" name="check" value="one">three<br>
<input type="checkbox" name="check" value="two">four<br><input type="checkbox" name="check" value="one">five<br>
<input type="checkbox" name="check" value="two">six<br><input type="checkbox" name="check" value="one">seven<br>
<input type="checkbox" name="check" value="two">eight<br>
</body>
</html>
现在,当我在选中一些复选框后单击返回时,url会发生更改。但复选框仍然处于选中状态。一旦我选中了一些复选框,我如何在返回后取消复选框复选框。。。
这里可以使用javascript/jQuery的hashchange函数。
window.onhashchange = function () {//add you logic here to check difference in url alert(window.location.hash);};
或者您可以使用jQuery的hashchange函数。
$(window).on('hashchange', function() {
alert(window.location.hash);
});
您可以使用上面的任何一个函数来对hashURL进行操作。
相关文章:
- 如何在angularJS中编辑时,如果DB中的值为true,则设置复选框,如果值为false,则取消选中复选框
- 使用Jquery选择或取消选择ListView中的所有复选框
- 使用jquery选中/取消选中单个复选框
- 使用javascript在页面加载时取消选中所有复选框
- (取消)使用单独的复选框激活复选框列表
- jQuery-取消选中复选框
- 单击或取消选中复选框时,如何创建弹出的自定义窗口
- Javascript选中/取消选中所有复选框并将值写入文本区域
- dojo/cbtree取消选中所有复选框并选中选中复选框
- 通过选中和取消选中复选框来添加和删除数组中的值
- 当与之关联的 ng-model 为 false 时,Angularjs 复选框值不会取消选中
- 如何通过jQuery选中所有复选框并在单击一个复选框时取消选择
- 使用Javascript根据组中的值选中或取消选中复选框
- 选中和取消选中 JavaScript 中的复选框
- 可以't取消选中该复选框(取消选中复选框时隐藏内容)
- 在复选框取消选中事件中从HTML下拉列表中删除项目
- 如何使用复选框取消选中来清除单选按钮
- 复选框取消单击事件Javascript
- 选中复选框(取消)时显示另一个文本
- Javascript复选框取消选中其他复选框,反之亦然