Javascript MVC选项卡页面回发后未刷新嵌套的partialview
我正在使用。我的第二个选项卡在发布时包含此表单,不会刷新我嵌套的局部视图。有什么问题吗 _部分项目选项卡.cshtmlJavascript MVC选项卡页面回发后未刷新嵌套的partialview,javascript,asp.net-mvc,asp.net-mvc-3,jquery-ui,asp.net-mvc-4,Javascript,Asp.net Mvc,Asp.net Mvc 3,Jquery Ui,Asp.net Mvc 4,我正在使用。我的第二个选项卡在发布时包含此表单,不会刷新我嵌套的局部视图。有什么问题吗 _部分项目选项卡.cshtml @model Mvc5.Models.ORDER_DETAILSMetadata @{ var ordernumber = (int)Session["Order_Number"]; } @using (Ajax.BeginForm("Items", "Order", new AjaxOptions {
@model Mvc5.Models.ORDER_DETAILSMetadata
@{
var ordernumber = (int)Session["Order_Number"];
}
@using (Ajax.BeginForm("Items", "Order",
new AjaxOptions
{
HttpMethod = "POST",
InsertionMode = InsertionMode.Replace,
UpdateTargetId = "target"
}))
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
@Html.TextBoxFor(model => model.id)
<input type="submit" value="Add" class="btn btn-default" />
}
<div id="target">
@Html.Action("Items_List", new { id = ordernumber }); <==== This does not show up after postback. Only after clicking browser refresh button does it show.
</div>
项目列表控制器
public ActionResult Items_List(int id)
{
List<ORDER_DETAILS> result = db.ORDER_DETAILS.Where(p => p.Order_Number == id).ToList();
return PartialView("_Partial_Items_List", result);
}
public ActionResult项目列表(int-id)
{
List result=db.ORDER\u DETAILS.Where(p=>p.ORDER\u Number==id).ToList();
返回PartialView(“部分项列表”,结果);
}
能否显示\u部分项目\u选项卡
视图?不完全清楚您的意思。初始视图显示由Items\u List()
方法返回的视图,但当您发布时,您将用另一个视图Items()
方法返回的视图替换该视图。你期望发生什么?Stephen,当我的选项卡加载时,我有一个表单,当发布时,它会自动显示刚刚发布的新记录列表。该列表是“部分项目列表”。@user1929393,您的AjaxForm正在发回Items()
,它返回部分视图\u部分项目选项卡
。它应该返回部分视图\u partial\u Items\u List
,因此保存新订单后,获取更新后的列表并返回它(就像在Items\u List()
方法中所做的那样),或者(可能更好)只返回新订单的部分视图并附加它(而不是替换)
public ActionResult Items_List(int id)
{
List<ORDER_DETAILS> result = db.ORDER_DETAILS.Where(p => p.Order_Number == id).ToList();
return PartialView("_Partial_Items_List", result);
}