2011-08-25 32 views
0

我想列出表格的每一行中的两个单选按钮,但我无法为每个单选按钮指定唯一的ID。我想分配基础上,@的ID item.myID如下:如何在HTMLAttributes中引用MVC项目/模型?

@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, [email protected], new { id = "@item.myID", autopostback = "true" }) 
     </td> 
    </tr> 
} 

然而,这些ID保持字面上呈现为“@ item.myID”。换句话说,它不会将@符号视为特殊字符。我也尝试使用括号,如下所示:“@(item.myID)”。

回答

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> 
} 

另外请注意,你不需要的时候你已经在另一个剃刀代码块的背景下,额外的“@”符号 - 剃刀视图引擎是相当聪明:)

+0

此外,它是建议保持id独特,单选按钮将按“名称”分组 – brodie

+1

如果我没有弄错,你不需要item.myID旁边的“@”。 –

相关问题