RenderPartial 和弹出模式 MVC C#

RenderPartial and popup modal MVC C#

我在索引视图中有一些代码

@foreach (var item in Model){
<tr><td>......</td>
    <td><button class="success" data-toggle="modal" data-target="#detailsModal" >details</button>
        <div class="modal fade" id="detailsModal" tabindex="-1" role="dialog" aria-labelledby="detailsModalLabel" aria-hidden="true">
             @{Html.RenderPartial("_Details", item);}
        </div></td></tr>}

但在不同行上单击我的按钮后,弹出窗口始终显示数据库的第一项。我该如何改变它?

控制器

        public ActionResult Details(int? id)
    {
        DBase dbase = new DBase();
        dbase = db.DBase.Find(id);
        return PartialView("_Details", dbase);
    }

由于 foreach 循环,您在 HTML 中声明了 multiple 个具有相同 ID 的模态。

所以它只使用它找到的第一个模态元素。要解决此问题,请为您的每个模态分配一个唯一的 ID。

因此,您可以通过向其添加索引来更改 data-target="#detailsModal"id="detailsModal",使其类似于 id="detailsModal-1"