我正在使用Html.LabelFor(...)创建静态。 我必须使用JQuery动态设置标签的Name属性。
答案 0 :(得分:8)
你可以使用LabelFor的一个重载中提供的htmlAttributes参数设置css类,设置内联样式和任何其他属性(甚至是名称不存在的属性)
即
<%: Html.LabelFor(model=>model.Title,
new { style="xyz", @class="abc", @name="MyTitle" }) %>
这将创建一个类似的标签:
<label for="Title" style="xyz" class="abc" name="MyTitle">Title</label>
@ before class之前的原因是“class”是c#中的保留字,所以你需要使用@符号来限定它。
答案 1 :(得分:0)
如果我一起理解您的问题和评论,您只是想尝试更改标签的文字。 MVC LabelFor
变成了HTML <label>
,并且没有像文本框那样的任何属性。
如果你需要用JS / jQuery更改它,那么给它一个ID并使用html
方法。
标记:
@Html.LabelFor(m => m.Something, new { id = "somethingLabel" })
@Html.TextBoxFor(m => m.Something)
jQuery的:
$("#somethingLabel").html("New Label Text");
你也可以使用text
而不是html
- 区别在于它逃脱了输入。