Bea*_*ear 5 razor asp.net-mvc-4
我已经查看了一些与此相关的各种答案,但所有这些都是针对mzc3而不是针对Razor.
我有一个页面,在部分视图中有多个表单,用于编辑不同的模型.但是,大多数模型都有一个"名称"字段.我希望能够指定具有特定ID的编辑器:
<div class="editor-label">
@Html.LabelFor(model => model.Name)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.Name, new {id = "PersonName"})
@Html.ValidationMessageFor(model => model.Name)
</div>
Run Code Online (Sandbox Code Playgroud)
我尝试了其他各种各样的东西,但没有找到一个满意的方法来处理这个问题.我似乎有两个选择:
1)使用普通的html助手手动创建表单,并在控制器中构建模型
2)重命名模型中的所有字段以适合格式
这些都不令我兴奋所以我希望有一个替代方案,但我担心id是将表单绑定到模型时使用的内容.
小智 26
我意识到这有点晚了但我自己也遇到了这个问题...我想"必须有一种方法来使用EditorFor并仍然覆盖ID"......有.执行以下操作,您的输入具有您喜欢的ID和名称.
@Html.EditorFor(model => model.myField, null, "txtMyField")
Run Code Online (Sandbox Code Playgroud)
希望这有所帮助,并希望它也能帮助其他人.
注意:根据我的理解,通常不会这样做的原因是为了避免其他动态创建的控件ID和名称发生冲突.
Jor*_*rge 19
改变从你的助手EditorFor
到TextBoxFor
的EditorFor,没有超载重写HTML属性
改变这个
@Html.EditorFor(model => model.Name, new {id = "PersonName"})
Run Code Online (Sandbox Code Playgroud)
对此
@Html.TextBoxFor(model => model.Name, new {id = "PersonName"})
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
37935 次 |
最近记录: |