Razor语法动态命名HTML元素

Gav*_*vin 21 razor asp.net-mvc-3

我有一个表单,使用像这样的Razor代码创建一些复选框元素

   foreach (var tag in Model.Tags)
    {
        <input type="checkbox" id="@tag.ID" name="@tag.ID" value="@tag.TagName"/>@tag.TagName<br /
    }
Run Code Online (Sandbox Code Playgroud)

这有效但我希望ID和名称采用这种格式chkTag [TagID]我试过这个

<input type="checkbox" id="chkTag@tag.ID" name="chkTag@tag.ID" value="@tag.TagName"/>
Run Code Online (Sandbox Code Playgroud)

但Razor只是将整个事物视为字符串并将其命名为chkTag@tag.ID.

所以我想我的问题是如何将动态剃刀ID添加到我的姓名和ID的末尾?

谢谢

Dav*_*her 42

你应该使用括号tag.ID,如下所示:

chkTag@(tag.ID)
Run Code Online (Sandbox Code Playgroud)

完整代码:

foreach (var tag in Model.Tags)
{
    <input type="checkbox" id="chkTag@(tag.ID)" name="chkTag@(tag.ID)" value="@tag.TagName"/>
}
Run Code Online (Sandbox Code Playgroud)