在 Razor 视图中,假设我有这样的东西:
@Html.HiddenFor(model => model.Värde)
在这里,“Värde”是瑞典语的“价值”。注意它包含“ä”。为此,Razor 将生成如下 HTML:
<input id="V_rde" name="Värde" type="hidden" />
请注意,元素的 id 是“V_rde”,而不是“Värde”。
那么,如何使用 getElementById 从 JavaScript 访问此元素?我知道我可以使用“V_rde”,但我想要一些通用的东西,而不仅仅是“Värde”,像这样的东西(意思是 htmlAttributes 参数):
@Html.Whatever(..., new { onclick = "JavaScript:alert(document.getElementById('@Html.IdFor("Värde")'));" })
我希望 @Html.IdFor(string name) 转换名称,就像在标签、复选框、编辑框等的 @Html 帮助器中转换的 id 一样。