我是新的.NET MVC。提交后更新局部视图Ajax.Beginform
在视图 “DisplayThings” 我有这样的:
@foreach (var thing in Model)
{
@Html.Partial("DisplayPartial", thing)
}
在局部视图 “DisplayPartial” 我有
@using (Ajax.BeginForm("Afunc", new AjaxOptions()))
{
@Html.EditorFor(model => model.AstringThing)
@Html.EditorFor(model => model.AintThing)
<input type="submit" name="submit" value="Ajax Post" />
}
目前的 “Afunc” 清议节省模式到数据库,然后重定向到控制器操作,从数据库中检索所有“事物”并呈现整个“Displaythings”视图。
我的问题是:当我按其中一个submitbuttons(每个“东西”我有一个submitbutton列表)。我只想要部分视图重新加载/反映我的变化。我不想重新加载整个“Displaythings”视图。我该怎么做呢?如果我只是返回一个局部视图,我会失去其他所有部分,除了那个局部视图
如果这是一个不好的方法,请给我指示。
更新:
我仍然在做一些错误的,因为我得到了一个新的页面渲染的局部视图。我的控制器:
public ActionResult Afunc(ThingModel thingmodel)
{
// do
return PartialView("DisplayPartial", thingmodel);
}
我一直在使用UpdateTargetId和的onSuccess都具有相同的结果(新页)
我会接受你的回答,因为你指出了我缺少的东西。然而,这只是我错过的两件事之一。一个常见的问题是忘记(在浏览网页后)将其添加到布局页面中: – Andreas 2013-02-10 19:54:41
@manojlds我开了一个新的问题,请你看看[这个](http://stackoverflow.com/questions/30868493/form-reload-but-partialview-cannot-with-ajax-in -mvc?noredirect = 1#comment49779357_30868493)问题? – 2015-06-16 14:26:15