Ajax模式弹出窗口,带有部分视图中的模式绑定



我试图找到一个解决方案有一段时间了,但找不到。。。我有一个绑定到模态的局部视图,它在网格中显示数据。低于

@model abc
@Html.Grid(Model)
{
grid columns
column with edit link
}

点击网格中的编辑链接,通过ajax,我想在绑定到另一个模型的部分视图中显示弹出窗口。这个引导弹出窗口也应该通过模型绑定来绑定,因为我需要在点击弹出的提交时执行服务器端验证

@model pqr
<div>
popup window with grid columns displayed in form for editing.
</div>

任何关于示例代码的帮助都会非常有帮助。

可能还有其他方法可以做到这一点,但我以前也这样做过:

  1. 您的编辑链接必须具有id作为要作为参数传递给控制器的id

  2. 获取数据并将模型传递到属性填充的局部视图

    $(".YourEditLinkClass").click(function () {
    var id = $(this).attr('id');
    $.ajax({
    url: "@Url.Action("GetDataForPopUpWindow", "YourController")",
    type: "GET",
    dataType: "html",
    data: { id: id },
    success: function (data) {
    $("#modal_" + id).html(data);//target position of modal
    $('#pqr_' + id).modal('toggle');
    }
    });
    });
    

控制器代码:

public ActionResult GetDataForPopUpWindow(int id)
{
using (YourDBContext)
{
var data = YourData;
pqr pqrModel = new pqr();
pqrModel.YourModelProperty = data.CorrespondingProperty;
return PartialView("_GridPartialView", pqrModel);
}
}

在名为_GridPartialView的部分视图中,引导模式的id必须为id="pqr_@Model.Id"。希望它有意义。

最新更新