【发布时间】:2010-11-14 12:51:24
【问题描述】:
我有一个select 表单字段,我想将其标记为“只读”,因为用户无法修改该值,但该值仍与表单一起提交。使用disabled 属性可防止用户更改值,但不会随表单提交值。
readonly 属性仅适用于input 和textarea 字段,但这基本上是我想要的。有什么办法可以让它工作吗?
我正在考虑的两种可能性包括:
- 不要禁用
select,而是禁用所有options 并使用 CSS 使选择变灰,使其看起来像已禁用。 - 向提交按钮添加点击事件处理程序,以便在提交表单之前启用所有禁用的下拉菜单。
【问题讨论】:
-
很抱歉加入晚了,但是@
trafalmadorian提供的解决方案效果最好。它禁用所有未选择的输入。如果它选择启用了多个选项,它也可以工作。$('#toSelect')find(':not(:selected)').prop('disabled',true); -
或者,您可以在 UI 上将控件保留为禁用,但在操作方法中检索值: public ActionResult InsertRecord(MyType model) { if (model.MyProperty == null) { model.MyProperty = 请求["我的属性"]; } }
标签: javascript html css forms html-select