我刚刚尝试了以下 HTML:
<input type='radio' checked='checked' name='test' id='r1' />
<input type='radio' checked='' name='test' id='r2' />
哪个(在我看来)应该选中第一个单选按钮。结果浏览器会检查任何带有checked
属性的单选按钮。
是否有一个“假”值,不会检查按钮,所以我的代码是一致的?
没有选中的属性是您可以做到这一点的唯一方法。
传统上,只需要检查单词来指示检查状态(您不必将其设置为值)。我认为 attributename="value" 模式是为了与 xhtml 等标准兼容(这就是浏览器忽略值本身的原因)
该checked
属性的存在通常足以让浏览器默认检查它。
不过,在无线电控制组中,我只是将属性放在最初选择的属性上,并在其他无线电元素上省略它。
没有虚假的价值。如果未选中该复选框,浏览器将不会通过 $_GET 或 $_POST 发送它。您还应该使用“值”属性 - 并在服务器端检查该值。否则是假的。