我有一个主细节屏幕在ASP.NET MVC中,当我提交一些东西时,它立即通过Ajax返回给我一个插入值的网格,我的问题是:我想通过一个失败或成功的消息传递给我jquery模式对话框或信息栏,我无法传递jquery的viewdata来处理它。
答案 0 :(得分:2)
您通过AJAX调用的操作方法需要返回响应中所需的所有内容。因此,例如,当您在ViewData中放置一些对象时,此对象将在您从操作返回的View(或可能是部分视图)中可用,因此可用于调用javascript。另一种选择是返回包含消息的JSON对象:
public ActionResult SomeAction()
{
// ...
return Json(
new { Message = "Success Message!" },
JsonRequestBehavior.AllowGet
);
}
可以像这样调用:
$.getJSON('/somecontroller/someaction', function(json) {
alert(json.Message);
});
答案 1 :(得分:0)
您可以将此标记放入脚本调用中。
var msg = '<%= ViewData["Mensagem"] %>';
alert(msg);
不要忘记编码字符串。