我想手动为文本框定义id和名称:
<%: Html.TextBoxFor(model => model.Name, new { @id = "txt1", @name = "txt1" })%>
但是只更改了id,而不是name属性,为什么?
<input id="txt1" name="Name" type="text" value="">
谢谢!
答案 0 :(得分:17)
没关系:
<%: Html.TextBoxFor(model => model.Name, new { Name = "txt1" })%>
您是否写了“姓名”而不是“姓名”?
输出:
<input name="txt1" type="text" value="">
答案 1 :(得分:10)
实际上你可以......只使用首字母大写的Name
代替name
:
@Html.TextBoxFor(model => model.Property, new { Name = "myName" })
答案 2 :(得分:5)
你不能使用强类型的lambda版本,你需要使用旧版本
Html.TextBox("txt1",new {@id = "txt1"})
答案 3 :(得分:1)
如果您仍然需要使用TextBoxFor()
,则可以更改模型上属性的名称,如果您按照建议使用专用的ViewModel,这应该很容易。但是我承认这是一个我并不总是遵循自己的建议。