如何使单选按钮只读但不禁用?

新手上路,请多包涵

问题“如何使单选按钮只读?”已经被问过 n 次。但解决方案始终是 disabled="disabled"

(也可能有复杂的 JavaScript 解决方案,它们与 clickchange 事件一起工作并阻止值的更改,但所有这些通常都有或多或少的肮脏黑客的味道。 )

disabled="disabled" 的问题/副作用是,它从数据集中“删除”该字段,然后不将其发送到服务器。

我想要的是使单选按钮只读/不可更改——但同时让它们在表单提交时发送到服务器。 disabled 不满足这个要求, readonly 似乎不适用于单选按钮。

将单选按钮设置为只读而不将其从表单数据集中删除的正确 HTML 属性是什么?

原文由 automatix 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 489
1 个回答

尝试使用一些 CSS:

 input[type="radio"].readonly {
  opacity: 0.5; /* not necessary */
  pointer-events: none;
}

原文由 Matt Jackson 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题