首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果视图是从不同的控制器创建的,是否可以从控制器调用方法?

如果视图是从不同的控制器创建的,是否可以从控制器调用方法?
EN

Stack Overflow用户
提问于 2009-06-24 03:23:38
回答 1查看 274关注 0票数 0

假设我从返回视图Index.aspx的HomeController调用Index(),那么Index.aspx上的javascript中的jquery ajax可以调用另一个控制器(ExternalController)中的方法吗?

代码语言:javascript
复制
$.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呈现的

代码语言:javascript
复制
$.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;

给了我一个内部服务器错误...

我只是想知道是不是因为我调用的控制器与渲染视图的控制器不同

EN

回答 1

Stack Overflow用户

发布于 2009-06-24 03:57:17

应该没有任何理由说明为什么调用与呈现当前视图的控制器不同的控制器会导致任何类型的错误。控制器只是一组通用命令的处理程序。无论这些命令是由浏览器的地址栏、超链接还是jQuery ajax调用发出的,都无关紧要。这三种协议都使用相同的协议向控制器发出命令。

我的猜测是,导致内部服务器错误的代码有问题。您是否尝试过在浏览器中直接转到/Row/getRowName查看发生了什么?它是否适用于GET和POST,仅适用于POST,仅适用于GET?当只支持GET时,你会发布一个POST吗?我需要更多的信息才能进一步帮助你。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1036245

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档