MVC 4清爽局部视图 [英] MVC 4 refreshing partial view

查看:145
本文介绍了MVC 4清爽局部视图的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个包含一个表,我需要更新我的主父视图内的局部视图。它在一个局部视图的原因是这样我就可以不用重装我的主视图更新。因为我在父视图是一个里面,我不能使用的一种形式在这里。

I have a partial view inside of my main parent view that contains a table I need to update. The reason it's in a partial view is so that I can update it without reloading my main view. I can't use a form here because I'm inside of one in my parent view.

局部视图:

@model IList<ItemViewModel>

@Html.ActionLink("Add Item", "AddItem", "Home", new { model = Model }, null)

<table>
    ...
    @{foreach (var item in Model)
        //add table row
    }
    ....
</table>

控制器:

public ActionResult AddItem(IList<ItemViewModel> model)
{
    model.Add(...);
    return View("_PartialView", model);
    //also tried return PartialView(...)
}

一切工作的大部分,但是当我的ActionResult回报,我父视图不见了,我看到的是局部。我想这是当我返回一个局部视图感,但我怎么刚刚刷新父里面呢?

Everything works for the most part but when my ActionResult returns, my parent view is gone and all I see is the partial. I guess that makes sense when I'm returning a partial view, but how do I just refresh it inside of the parent?

推荐答案

在你的主视图这是你的部分。

In your Main view Here is your Partial.

<div id="partialSummaryDiv">@{Html.RenderAction("GetSummary", "Order");}</div>

在某些情况下你有你的Ajax调用。

On some event you'll have your ajax call.

$.ajax({
    url: "/Order/GetContractTotals",
    type: "POST",
    success: function (result) {
         // refreshes partial view
        $('#partialSummaryDiv').html(result);
    }
});

控制器

[HttpPost]
public ActionResult GetContractTotals()
    {
       // blah blah
        return PartialView("_OrderContractTotals", octvm);        
    }

这篇关于MVC 4清爽局部视图的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆