AJAX导致意外的输入错误结束或内部服务器错误

时间:2015-10-04 00:57:04

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

我目前正在创建一个ASP.NET MVC项目,而我的AJAX脚本导致错误。我为发布这样一个特定的问题而道歉,但老实说,我已经被困在这里好几天了。

map(int,[x for x in map(operator.concat, str(a), str(b)) if x.isdigit()]) 

我的控制器目前属于ActionResult类型并返回视图。但是,我也试过返回任何内容(void)并返回一个JsonResult。这些变化都没有导致任何错误。

请有人按我正确的方向推动我,我的控制台没有错误。非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

您几乎总是可以直接使用更简单的$.post帮助程序(包装$.ajax),而不是$.ajax。这是您的代码,已更新为使用$.post

$.post('@Url.Action("Update", "Home")',
    { 
        ToUpdate : "1",  
        ID : "@variableWithinCode" 
    })
    .done(function(response, textStatus, jqXHR){
        console.log(response);
    })
    .fail(function(jqXHR, textStatus, errorThrown){
        console.log(errorThrown);
    });

您也可以使用Url帮助程序将URL注入Javascript,假设此代码位于视图中的<script>标记中。

回应你的评论:

听起来你在事件处理程序中使用这个代码来获得某种“按钮”。如果是这种情况,你会想要在ajax调用之外捕获“this”上下文,如下所示:

$('some-selector').on('click', function(e){

    var _this = $(this);

    $.post('@Url.Action("Update", "Home")',
    { 
        ToUpdate : "1",  
        ID : "@variableWithinCode" 
    })
    .done(function(response, textStatus, jqXHR){        

        _this.find('i').toggleClass('glyphicon glyphicon-chevron-up').toggleClass('glyphicon glyphicon-down');

    })
    .fail(function(jqXHR, textStatus, errorThrown){
        console.log(errorThrown);
    });

});