2016-12-26 33 views
0

模型下面是我CSHTML代码如何通过从@ html.partial

IVE在主视图中使用IEnumerable和和单模型对象中的局部视图

即时通讯做CRUD操作...每行有编辑/信息/删除按钮

@model IEnumerable<jQuery_CRUD.DAL.User> 
@foreach (var item in Model) 
    { 
     <tr> 
      <td> 
       @Html.DisplayFor(modelItem => item.Name) 
      </td> 
      <td> 
       @Html.DisplayFor(modelItem => item.Address) 
      </td> 
      <td> 
       @Html.DisplayFor(modelItem => item.ContactNo) 
      </td> 
      <td> 
       @Html.ActionLink("Edit", "Edit", new { id = item.UserId }, new { @class = "modal-with-form btn btn-default" ,href = "#modalEdit" }) | 
       @Html.ActionLink("Details", "Details", new { id = item.UserId }, new { @class = "modal-with-form btn btn-default", href = "#modalDetails" }) | 
       @Html.ActionLink("Delete", "Delete", new { id = item.UserId }, new { @class = "modal-with-form btn btn-default", href = "#modalDelete" })    



       <div id="modalEdit" class="modal-block modal-block-primary mfp-hide"> 
        @Html.Partial("Edit", item) 
       </div> 

       <div id="modalDetails" class="modal-block modal-block-primary mfp-hide"> 
        @Html.Partial("Details", item) 
       </div> 


       <div id="modalDelete" class="modal-block modal-block-primary mfp-hide"> 
        @Html.Partial("Delete", item) 
       </div> 




      </td> 
     </tr> 

上编辑/细节点击显示信息仅在表的第一行

在局部视图我所用的模型是

@model jQuery_CRUD.DAL.User 

我如何克服这个

回答

0

那是因为你正在重新使用每个item相同id属性表中的元素,而应该id是唯一的。

使用item.UserId分配为每一个独特的id

@Html.ActionLink("Edit", "Edit", new { id = item.UserId }, new { href = "#modalEdit" + item.UserId }) | 
@Html.ActionLink("Details", "Details", new { id = item.UserId }, new { href = "#modalDetails" + item.UserId }) | 
@Html.ActionLink("Delete", "Delete", new { id = item.UserId }, new { href = "#modalDelete" + item.UserId }) 

<div id="[email protected](item.UserId)" class="modal-block modal-block-primary mfp-hide"> 
    @Html.Partial("Edit", item) 
</div> 

<div id="[email protected](item.UserId)" class="modal-block modal-block-primary mfp-hide"> 
    @Html.Partial("Details", item) 
</div> 

<div id="[email protected](item.UserId)" class="modal-block modal-block-primary mfp-hide"> 
    @Html.Partial("Delete", item) 
</div> 
+0

达行不通的所有三个动作链接共享相同的ID – naveen

+0

@naveen号如果你'item.UserId'追加到每一个(如在答案中显示),你会得到一个唯一的ID。 – haim770

+0

所有这三个actionlinks都属于同一行@ haim770 – naveen