使用jquery / Ajax使用对象模型渲染局部视图

时间:2013-08-15 15:28:23

标签: c# jquery asp.net-mvc html.renderpartial

我当前的代码看起来像

<!-- some html -->
{
    // some code
    @Html.Partial("~/Views/AdminUser/Main.cshtml", Model.AdminUserModel)
}

但是,我需要将其作为ajax调用。如何在调用中包含模型的jquery ajax调用?

1 个答案:

答案 0 :(得分:2)

我是怎么做的是传递id的ajax调用:

$.ajax({
    url: "@(Url.Action("Action", "Controller", new { id = "----" }))/".replace("----", id),
    type: "POST",
    cache: false,
    async: true,
    success: function (result) {
         $(".Class").html(result);
    }
});

然后在你的控制器中设置了像

这样的动作
public PartialViewResult Action(string id)
{
     //Build your model
     return PartialView("_PartialName", model);
}

如果你确实需要通过ajax将模型传递给控制器​​,如果你创建一个与模型具有相同字段并且字符串化并传递它的jquery对象,它将正确地通过。

var toSend = {};
toSend.ID = id;
toSend.Name = name; 

等,然后在ajax调用中

data: JSON.stringify(toSend),