假设我从返回视图Index.aspx的HomeController调用Index(),那么Index.aspx上的javascript中的jquery ajax可以调用另一个控制器(ExternalController)中的方法吗?
$.ajax({
type: "POST",
url: "/Home/sayHi",
dataType: "json",
data:({ currRow : centerPost[0], offset : ((-1 * Math.ceil(numRows / 2)) + 1) }),
error:function(request){alert(request.statusText)},
success:function(result){alert(result)}
}).responseText;没有任何错误,页面是从HomeController呈现的
$.ajax({
type: "POST",
url: "/Row/getRowName",
dataType: "json",
data:({ currRow : centerPost[0], offset : ((-1 * Math.ceil(numRows / 2)) + 1) }),
error:function(request){alert(request.statusText)},
success:function(result){alert(result)}
}).responseText;给了我一个内部服务器错误...
我只是想知道是不是因为我调用的控制器与渲染视图的控制器不同
发布于 2009-06-24 03:57:17
应该没有任何理由说明为什么调用与呈现当前视图的控制器不同的控制器会导致任何类型的错误。控制器只是一组通用命令的处理程序。无论这些命令是由浏览器的地址栏、超链接还是jQuery ajax调用发出的,都无关紧要。这三种协议都使用相同的协议向控制器发出命令。
我的猜测是,导致内部服务器错误的代码有问题。您是否尝试过在浏览器中直接转到/Row/getRowName查看发生了什么?它是否适用于GET和POST,仅适用于POST,仅适用于GET?当只支持GET时,你会发布一个POST吗?我需要更多的信息才能进一步帮助你。
https://stackoverflow.com/questions/1036245
复制相似问题