如何在页面重新加载后保持复选框切换div的状态?
我选中了一个复选框时会显示一个div,并在取消选中时隐藏。 如果表单有错误,页面会重新加载,即使在提交前选中了复选框,div也会显示为隐藏状态。 我可以添加对onLoad事件的调用,但有没有更简洁的方法来确保在页面重新加载后,div是根据复选框的状态呈现的?
CSS:
#maintenance-window { display: none; }
jQuery的:
$("#check-hasMaintenance").click(function() { $(this).is(":checked") ? $('#maintenance-window').show("fast") : $('#maintenance-window').hide("fast") });
HTML:
Stuff
选项1
确保在页面加载时根据复选框显示div:
$(document).ready(function() { // Modified for readability - inline if is fine. if($("#check-hasMaintenance").is(":checked")) $('#maintenance-window').show("fast") else $('#maintenance-window').hide("fast"); });
简化的隐藏/显示代码:
$("#check-hasMaintenance").click(function() { $('#maintenance-window').toggle('fast'); });
选项2
像这样的简写版应该也可以:
$(document).ready(function() { $('#maintenance-window').toggle($("#check-hasMaintenance").is(":checked")); }); $("#check-hasMaintenance").click(function() { $('#maintenance-window').toggle('fast'); });