【问题标题】:How to explicitly set checkbox unchecked如何明确设置复选框未选中
【发布时间】:2011-08-15 10:10:43
【问题描述】:

我有一个带有过渡文档类型的 xhtml 页面,其中有一个复选框,我希望在加载后取消选中该复选框。没有 JavaScript!在 Firefox 3.5(例如,可能有其他浏览器)中,用户可以检查输入,而不是重新加载页面并检查输入。我该如何克服这种行为?

【问题讨论】:

  • 我很确定 autocomplete="off" 应该适用于你的情况。
  • JohnP 你应该回答而不是评论。
  • 在firefox中,如果一个checkbox输入没有名字,也很常见,默认勾选。
  • shasi:谢谢你的评论;救了我。无法弄清楚为什么我的逻辑在 Firefox 中是倒退的。

标签: html checkbox unchecked


【解决方案1】:

要明确地将复选框设置为未选中,以下对我有用: <input type="checkbox" unchecked>

【讨论】:

    【解决方案2】:

    尝试在你的代码中加入:

    <p><label><input id="test" type="checkbox"></input>Test checkbox</label></p>
    

    页面启动或刷新时不勾选。

    【讨论】:

    • 标签输入是一个自闭合标签,因此&lt;/input&gt;是非法的
    • 根据Mozilla's MDN,Firefox 通过自动完成在页面加载之间保持复选框状态。
    【解决方案3】:

    使用

    autocomplete="off"
    

    也可以看看Why does the checkbox stay checked when reloading the page?

    【讨论】:

      【解决方案4】:

      仅使用 HTML 无法更改文档的状态。你所能做的就是设置checked="checked"或不设置。

      您需要 JavaScript 或服务器端语言来确定是否应该设置该属性。

      【讨论】:

      • JohnP 的评论对我来说是最好的,但应该提到标题“Cache-Control: no-cache”也有帮助。
      【解决方案5】:

      你不能,没有 JavaScript。这是 Firefox 特有的行为,即使您可以显式强制“未检查​​”状态(您不能这样做,因为缺少 checked 已经意味着),也会发生这种情况。

      我知道的唯一非 Javascript 方法是在每次请求时在服务器端重命名表单元素,这样 FF 就没有机会存储该值。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-08-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-04-21
        相关资源
        最近更新 更多