ASP.NET MVC 2:更新部分?

时间:2010-12-16 00:15:51

标签: asp.net-mvc-2 partial-views

是否可以调用控制器操作,该操作将使用更新的模型更新(刷新)View中的部分?如果是这样,有人可以给我一个例子吗?

我正在进行ajax通话。该调用将一些json发送给控制器。控制器提取json并将其格式化为XML,然后将其传递给SPROC。 SPROC的结果更新了模型。这是我需要使用最新模型结果更新视图的地方。

2 个答案:

答案 0 :(得分:0)

是的,您只需要让操作返回PartialView及其更新的模型。调用代码可能如下所示:

<div id="MyDiv"></div>
<%=Ajax.ActionLink("Update", "GetUpdatedPartialView", 
    new AjaxOptions{UpdateTargetId = "MyDiv"}) %>

当您点击该链接时,您的操作返回的HTML将被放入ID为“MyDiv”的div中。

修改

我没有我的代码,但如果我没记错的话就是这样:

var url = '<%=Url.Action("GetUpdatedPartialView")%>';
$.post(url, function(data) {$('#MyDiv').html(data);});

答案 1 :(得分:0)

在控制器中,您可以执行以下操作:

if (Request.IsAjaxRequest()) {
    return View(name_of_partial, updated_model);
}

在前端,它只是jQuery load,类似于:

$("#target-div").load(url_of_action, data_to_send);