在使用MVC Html.DropDownList时,我需要设置什么选项才能只读下拉框?
我尝试过......
Html.DropDownList("Types", Model.Types, new { _Enabled = "false" })
Run Code Online (Sandbox Code Playgroud)
......沿着这条线路有很多不同的东西; 唉,没有快乐!
我认为这将是一个简单的.....它可能是!
ReadOnly属性似乎不在MVC 4中.可编辑(false)属性不能按照我希望的方式工作.
有类似的东西有效吗?
如果没有,那么我如何创建自己的ReadOnly属性,如下所示:
public class aModel
{
[ReadOnly(true)] or just [ReadOnly]
string aProperty {get; set;}
}
Run Code Online (Sandbox Code Playgroud)
所以我可以这样说:
@Html.TextBoxFor(x=> x.aProperty)
Run Code Online (Sandbox Code Playgroud)
而不是这(它确实有效):
@Html.TextBoxFor(x=> x.aProperty , new { @readonly="readonly"})
Run Code Online (Sandbox Code Playgroud)
或者这(它确实有效,但未提交值):
@Html.TextBoxFor(x=> x.aProperty , new { disabled="disabled"})
Run Code Online (Sandbox Code Playgroud)
http://view.jquerymobile.com/1.3.2/dist/demos/widgets/forms/form-disabled.html
这样的事可能吗? /sf/answers/819185041/
注意:
[可编辑(假)]无效
任何人都可以告诉我如何只读取一个复选框而不是禁用?对于文本框,我这样使用它
@Html.TextBoxFor(m => m.FirstName, new { id = "fName", @readonly="readonly" })
Run Code Online (Sandbox Code Playgroud)
现在,我有一个复选框和这样的单选按钮
@Html.CheckBoxFor(m => m.Iseighteen, new { id = "18", @disabled = "disabled" })
@Html.RadioButtonFor(m => m.isMale, new { id = "male",@disabled = "disabled" })
Run Code Online (Sandbox Code Playgroud)
禁用的问题是我无法在禁用的字段中获得焦点,而我可以在只读中获得焦点.如果我选项卡然后它选择只读字段,以便屏幕阅读器可以读取它,但如果它被禁用,那么它会跳过所有禁用的内容并转到页脚.我尝试使用readonly复选框和收音机,但它不起作用,让用户编辑.那么,有什么建议吗?