[英]call a c# functions in cshtml when Ajax.BeginForm completed
所以有一个 Ajax.BeginForm 调用 PartialView 并返回一个视图(我用它来过滤产品)
但我也想更改主视图模型
我的意思是在 Ajax.BeginForm 完成后我想在PartiaView动作中制作ViewBag
之后,当 Ajax.BeginForm 完成后,调用 cshtml 中的函数以使用该ViewBag更新主视图模型
我怎样才能做到这一点
最后这是我的目标:
@functions{
public void ChangeModel(){
Model.Prod = ViewBag.Prod //forget about the casting !
}
}
@using (Ajax.BeginForm("GetStations", "Trains", new { area = "Site" }, new AjaxOptions
{
OnSuccess = ChangeModel(),
}, null))
OnSuccess 是一个 JavaScript 回调函数,
C#代码将是
@using (Ajax.BeginForm("GetStations", "Trains", new { area = "Site" }, new AjaxOptions
{
OnSuccess = 'mySuccessCallback',
}, null))
你的控制器会返回这样的东西
return Json(new { Prod = ViewBag.Prod, ... }, JsonRequestBehavior.AllowGet);
JavaScript 将是
function mySuccessCallback(data, status, xhr) {
var newProdValue = data.Prod; // passed as model from backend
// ... display the new value anywhere with JS or jQuery
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.