我通过$ .getJSON()方法调用控制器操作,但我不知道为什么操作没有调用。
$.getJSON("/Home/Index", { ID:id }, function(){
});
但是当我把它更改为
时$.getJSON("/Home/Index/s", { ID:id }, function(){
});
它工作正常。我检查了我的路由,我没有发现任何问题。可能是什么问题?
答案 0 :(得分:1)
这真的很奇怪 我已经尝试过你的脚本,我唯一能看到的问题是,当调用是GET时,ASP.NET MVC2无法返回json数据。出于安全原因,它已被阻止。
如果您尝试使用Fiddler跟踪通话,您可能会注意到响应是这样的:
“此请求已被阻止,因为在GET请求中使用此信息时,可能会向第三方网站披露敏感信息。要允许GET请求,请将JsonRequestBehavior设置为AllowGet。”
如果你想启用返回数据,无论如何,你可以强制它:
return (Json(<your object>, JsonRequestBehavior.AllowGet));
或做一个POST。您可以找到更多信息here。