Asp.net mvc 3 Ajax.ActionLink失败
现在,我正在学习MVC对Ajax的实现,我很难让它正常工作。以下是我所拥有的:Asp.net mvc 3 Ajax.ActionLink失败,asp.net-mvc-3,asp.net-ajax,Asp.net Mvc 3,Asp.net Ajax,现在,我正在学习MVC对Ajax的实现,我很难让它正常工作。以下是我所拥有的: @Ajax.ActionLink("Click here to get a title", "Yo", new AjaxOptions { OnSuccess = "alert(\"YES!\")", OnFailure = "alert(\"WHY?!\")" }) 以下是两种控制器方法: public PartialViewResult GetThatTitle() {
@Ajax.ActionLink("Click here to get a title", "Yo",
new AjaxOptions { OnSuccess = "alert(\"YES!\")", OnFailure = "alert(\"WHY?!\")" })
以下是两种控制器方法:
public PartialViewResult GetThatTitle()
{
var titular = new TitleDataEntity { };
titular.TitleName = "Inception!";
titular.PublishDate = DateTime.Now;
titular.Id = 2;
return PartialView("_testView", titular);
}
public JsonResult Yo()
{
var titular = new TitleDataEntity { };
titular.TitleName = "Inception!";
titular.PublishDate = DateTime.Now;
titular.Id = 2;
if(Request.IsAjaxRequest())
{
return Json(titular);
}
return Json(titular);
}
当我调用函数“Yo”时,浏览器会显示“为什么?!”警告框。但是当我调用GetHatTitle时,它给了我成功的警示。为什么在我尝试返回Json结果时失败了?在返回默认禁用的Json时,您需要允许这样的GET请求:
return Json(titular, JsonRequestBehavior.AllowGet);
此外,我强烈建议您使用。它在控制台中显示所有AJAX请求,您可以看到请求和响应。如果您使用过它,您会看到以下内容:
无效操作例外:此
请求已被阻止,因为
敏感信息可能是
向第三方网站披露
在GET请求中使用时。到
允许获取请求,设置
JsonRequestBehavior到AllowGet。]
这当然会让你走上正轨。伙计,我觉得自己像个白痴。谢谢你的帮助和及时回复。你太棒了。