2013-12-10 54 views
1

我在顯示AJAX鏈接的頁面上有局部視圖。我想有網格內唯一的按鈕名稱,但是當我實現的代碼來做到這一點,導致局部視圖不渲染...foreach循環中的變量導致局部視圖不呈現

在局部視圖(渲染):

@foreach (var ht in Model) 
{ 
    <div class="row"> 
     <div class="four columns alpha"> 
      @ht.Value 
     </div> 
     <div class="three columns omega">   
      <input type="button" value="delete" id="btnDelete" /> 
     </div> 
    </div> 
} 

在局部視圖(不渲染)

@foreach (var ht in Model) 
{ 
    @{ var buttonName = "btnDeleteCampaign" & @ht.Id; } 
    <div class="row"> 
     <div class="four columns alpha"> 
      @ht.Value 
     </div> 
     <div class="three columns omega">   
      <input type="button" value="delete" id="@buttonName" /> 
     </div> 
    </div> 
} 

什麼一部分第二塊是保持局部視圖渲染從,以及如何實現我的目標?

+0

我不能告訴你爲什麼要使用它,但我認爲這可能是要麼'&'或'@'的變量初始化。 – Kehlan

+0

有人一直在玩VB我敢打賭。在你進入這間房子之前洗掉那些污物! ;-) –

回答

3

你不需要@{和字符串連接在一起,使用+

@foreach (var ht in Model) 
{ 
    var buttonName = "btnDeleteCampaign" + @ht.Id; 
} 
+0

謝謝,我也嘗試過使用+以及,但它似乎沒有工作。可能是由於@ {圍繞它。謝謝 - 現在正在處理這個實現。 – r584

0

試試這個初始化buttonName

@{var buttonName = "btnDeleteCampaign" + ht.id} 
0

不能使用&來串聯在C#中的字符串。初始化你buttonName變量是這樣的:

var buttonName = "btnDeleteCampaign" + ht.Id