[英]How can I stop 'id' tags from being automatically inserted in my code?
我创建了一个局部视图,该局部视图中的元素如下所示(Razor代码):
<tr>
<td>
@Html.TextBoxFor(model => model.OtherReferenceNumber,new { @data_slmgui_name= "otherReferenceNumber", @style = "width: 45%" })
@Html.ValidationMessageFor(model => model.OtherReferenceNumber)
</td>
</tr>
我不想在input
标签上使用id。 但是,当我查看页面源代码时,即使我没有添加该元素的id
属性也会出现。 有人可以向我解释为什么会出现这种情况,以及如何使它停止出现吗?
以下是实际的HTML输出:
<tr>
<td>
<input data-slmgui-name="otherReferenceNumber"
data-val="true"
data-val-length="OtherReferenceNumber max length is 100"
data-val-length-max="100"
id="OtherReferenceNumber"
name="OtherReferenceNumber"
style="width: 45%;"
value="hjghj"
type="text">
</td>
</tr>
它们是由Asp.net Mvc自动生成的,摆脱它们可以做到这一点
@Html.TextBoxFor(model => model.OtherReferenceNumber, new {id="" /*more properties*/})
HtmlHelpers, Html.TextBoxFor()
甚至Html.TextBox
都将始终附加name
和id
,如果您想对其进行更多控制,则可以轻松地使用<input type="text" ...>
就像:
<input type="text"
val="@Model.OtherReferenceNumber"
data-slmgui-name="otherReferenceNumber"
style="width: 45%" />
但是,请记住,没有name
和id
您将永远不会在Action中获得模型,并且需要浏览FormsCollection
对象。
我建议您在承诺“不要使用ID的部分”之前先看一些视频教程...
通过ASP.NET网站,Microsoft要求PluralSight为此提供他们的课程,并且您可以免费使用完整的MVC课程 ...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.