asp.net-mvc – Html.TextBox条件属性与ASP.NET MVC预览5
发布时间:2020-12-15 18:38:50 所属栏目:asp.Net 来源:网络整理
导读:我有一个强类型的MVC视图控件,它负责用户可以创建和编辑客户端项目的UI。我希望他们能够在创建时定义ClientId,但不能编辑,并将其反映在UI中。 为此,我有以下一行: %= Html.TextBox("Client.ClientId",ViewData.Model.ClientId,new { @readonly = (ViewD
我有一个强类型的MVC视图控件,它负责用户可以创建和编辑客户端项目的UI。我希望他们能够在创建时定义ClientId,但不能编辑,并将其反映在UI中。
为此,我有以下一行: <%= Html.TextBox("Client.ClientId",ViewData.Model.ClientId,new { @readonly = (ViewData.Model.ClientId != null && ViewData.Model.ClientId.Length > 0 ? "readonly" : "false") } ) %> 看起来,无论我给予readonly属性(甚至是“false”和“”),Firefox和IE7都会使输入成为只读,这是令人厌恶的反直觉的。有没有一个很好的,三元运算符的方法来完全放弃属性,如果不需要的话? 解决方法
艰难的问题…但是,如果您只想定义readonly属性,可以这样做:
<%= Html.TextBox("Client.ClientId",ViewData.Model.ClientId != null && ViewData.Model.ClientId.Length > 0 ? new { @readonly = "readonly" } : null) %> 如果要定义更多属性,则必须定义两个匿名类型,并具有多个属性副本。例如,这样的东西(我不喜欢) ClientId.Length > 0 ? (object)new { @readonly = "readonly",@class = "myCSS" } : (object)new { @class = "myCSS" } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 具有接受routeValues和htmlAttributes的重载
- ASP.NET:如何从通用处理程序获取文件的虚拟路径?
- ASP.net没有为某些用户代理生成javascript
- asp.net – 当Visual Studio 2013打开Web项目时,IISExpress
- asp.net – Turn by Turn游戏:使用SignalR或SignalR和REST
- asp.net – 从HTML生成MHTML
- 为什么VS 2013将ASP.NET MVC 4 web.config复制到bin并重命名
- asp.net-mvc – 为什么Chrome在这两种情况下使用不同的客户
- asp.net – mvc大写模型与小写模型
- asp.net-mvc – Kendo ASP.NET MVC – 索引超出范围数据绑定
推荐文章
站长推荐
热点阅读