MVC 3中的Ajax JQuery问题

时间:2011-09-11 03:27:25

标签: jquery asp.net-mvc asp.net-mvc-3

我正在使用https://github.com/Haacked/CodeHaacks 访问我的MVC操作。

我已尝试过本地示例,但效果很好。

但是,当我把它放在我的代码中时,会出现以下错误......

“错误:$ mvc.ManageBanking.AddBank({Name:name})。完成不是函数”

我的代码

    $(document).ready(function(){
        $('#NewBankButton').click(function () {
            var name = $('#txtBankName').val();

            $mvc.ManageBanking.AddBank({ Name: name }).done(function (data) {
                alert('done');
            });
        });
    });

Ajax脚本

if (typeof $mvc === 'undefined') {
  $mvc = {};
}
$mvc.ManageBanking = [];
$.each(["AddBank","AddBankAccount"], function(action) {
 var action = this;
 $mvc.ManageBanking[this] = function(obj) {
   return $.ajax({
     cache: false,
     dataType: 'json',
     type: 'POST',
     headers: {'x-mvc-action': action},
     data: JSON.stringify(obj),
     contentType: 'application/json; charset=utf-8',
     url: '/json/managebanking?invoke&action=' + action
   });
 };
});

我当时认为这是我的另一个脚本导致它的问题,但是没有看到任何搞乱它的东西...该方法有效,因为在我的ManageBankingController中,如果我调试它会逐步执行,但它不会完成事件..

我认为“完成”是错误的,但“成功”也不起作用..

1 个答案:

答案 0 :(得分:0)

if (typeof $mvc === 'undefined') {
  $mvc = {};
}
$mvc.ManageBanking = {};
$.each(["AddBank","AddBankAccount"], function(index, action) {
 $mvc.ManageBanking[ action ] = function(obj) {
   return $.ajax({
     cache: false,
     dataType: 'json',
     type: 'POST',
     headers: {'x-mvc-action': action},
     data: JSON.stringify(obj),
     contentType: 'application/json; charset=utf-8',
     url: '/json/managebanking?invoke&action=' + action
   });
 };
});