这是一个非常简单的问题(我假设)。可能是一个转贴,但我在这里找不到答案......所以我们走了。
我在页面上有一个复选框,我想默认为“未选中”(除非我在我的php中另行指定)。
当我刷新页面时,如果选中此框,它将保持检查状态,这是no-bueno,因为选中该框会通过附加到框中的功能将dom元素添加到我的页面。所以问题是如果我刷新,仍然检查框,但dom元素不存在(因为我没有解雇该功能,我不想,除非用户检查复选框)但框是 ALREADY 已经检查过,我最终会在对面的地方 UN 检查该框创建我的dom元素并检查它是否将其删除。
基本上,问题是......
有没有办法默认一个复选框在没有javascript的情况下取消选中?
BTW我没有在FF 3.5.10以外的任何浏览器中检查(没有双关语)
答案 0 :(得分:9)
参见http://weblogs.mozillazine.org/gerv/archives/2006/10/firefox_reload_behaviour.html (第一条评论):
这是有目的的,所以如果你点击刷新按钮你 不要失去你的工作。在Bugzilla的某个地方有一个条目 WONTFIXed要求定期刷新以始终重置表单 完全。基本上它是一个向后兼容的东西 - 每一个 自NS1.0(甚至可能是Mosiac)以来的浏览器已经做到了。
动态生成的页面甚至不会重置自己,不过如果 expiration设置为0,你点击后退按钮它会给你一个 新鲜的形式。此外,如果表单本身更改(添加或删除元素, 更改动作等)for将在重新加载时重置。我没有 测试它,但将表单名称设置为随机的(假设你 不需要JS访问的名称)可能只是工作。喜欢“>用PHP。
正如你所说,强制刷新会清除表单,然后重置它 太。会有类似的事情 你想要什么(再次,未经测试)?
答案 1 :(得分:6)
这适用于ie 自动填充= “关闭”
答案 2 :(得分:3)
不确定
document.getElementById('my_checkbox').checked = false;
哎呀,我错过了关于没有JS的部分。据我所知,Firefox在刷新时保留了页面状态,所以我猜没有别的办法。
答案 3 :(得分:0)
实际上,您只需添加带有属性 <form>
的 autocomplete="off"
标记:
<form autocomplete="off">
<label for="checkbox">
<input type="checkbox" id="checkbox">
</label>
</form>