2017-12-18 276 views
0

本質上,我爲每個循環的表格顯示新行。 一行中有一個名字,所以我想給td標籤一個「CatName」的ID +我在哪裏我是循環的迭代。例如,如果我們在循環的第二次迭代中,id將是「CatName2」。在下面貼的代碼,我已經嘗試使用@來調用C#代碼,但它僅與一個編譯錯誤返回:使用c#和剃鬚刀設置html元素的ID

Only assignment, call, increment, decrement, and new object expressions can be used as a statement

@{ 
    int i = 0; 
} 
@foreach (CategoryVM category in Model.CategoryList) 
{ 
    <tr> 
     <td id="@{"CatName" + i.ToString()}"></td> 
    </tr> 
    i++; 
} 
+0

請注意,模型 - 視圖 - 控制器標籤是關於模式的問題。 ASP.NET-MVC實現有一個特定的標籤。而不要在你的問題 –

回答

3

使用括號(),而不是花括號來評估一個C#表達。

所以改變

<td id="@{"CatName" + i.ToString()}"></td> 

<td id="@("CatName" + i.ToString())"></td> 

該錯誤確認內@{ }內容應該是一個完整的陳述,而不是表達式。

+0

謝謝你的答案!這工作完美! –