如何对不同的MVC控制器进行ajax调用

时间:2014-10-12 20:55:35

标签: javascript ajax asp.net-mvc-3

在对我的MVC控制器进行ajax调用时,我收到错误404

以下是该方案:

我有2个控制器:( PartnerControler,GettingSartedController)

在入门页面上:http://mysite/GettingStarted/我进行了以下ajax调用:

$scope.SubmitRegistration = function() {
  return $http({
    url: '/partner/register',
    method: 'POST',
    data: $scope.UserAccount,
    headers: {
      'Content-Type': 'application/json'

我在给控制器的电话上得到了404.

当我将确切的寄存器方法添加到gettingstarted控制器并将ajax URL更改为以下内容时,它可以工作:

url: '/gettingstarted/register',

在网络上使用特定控制器的页面可以调用另一个控制器吗?

如何修改上述脚本?

1 个答案:

答案 0 :(得分:1)

如果您有单独的js文件,则可以使用下面的解决方法

<input type="hidden" id="registerurl" data-register-url="@Url.Action("register", "partner")"/>

并使用此element's attribute作为url用于http电话

var urlRegisterPartner = $('#registerurl').data('register-url');