我正在尝试在表格的每一行列出两个单选按钮,但我无法为每个单选按钮分配唯一的ID。我想根据@ item.myID分配ID,如下所示:
@foreach (var item in Model)
{
<tr>
<td>
@Html.RadioButton("Yes", @item.myID, @item.IsCool, new { id = "@item.myID", autopostback = "true" })
@Html.RadioButton("No", @item.myID, !@item.IsCool, new { id = "@item.myID", autopostback = "true" })
</td>
</tr>
}
但是,ID仍然按字面意思呈现为“@ item.myID”。换句话说,它不会将@符号视为特殊字符。我也尝试过使用括号,例如:“@(item.myID)”。
答案 0 :(得分:0)
您需要删除ID分配周围的引号,如此;
@foreach (var item in Model)
{
<tr>
<td>
@Html.RadioButton("Yes", item.myID, item.IsCool, new { id = item.myID, autopostback = "true" })
@Html.RadioButton("No", item.myID, !item.IsCool, new { id = item.myID, autopostback = "true" })
</td>
</tr>
}
另外,请注意,当您已经处于另一个Razor代码块的上下文中时,您不需要额外的“@”符号 - Razor View Engine非常聪明:)