繁体   English   中英

jQuery Ajax没有命中控制器

[英]Jquery ajax not hitting the controller

我遇到了一个很奇怪的问题。 来了

我正在使用与Webapi控制器和服务层对话的淘汰赛js应用程序,等等。

我有kendo grid,它是在编辑一行之后,在页面中调用一个事件,然后在该事件中进行ajax调用以将数据发送到webapi控制器。

现在有趣的是,当我将断点放在.js文件中并放入F12时,控件将进入控制器,否则它将被跳过。 不知道发生了什么。

Ajax代码是:

$.ajax({
         url:controller,
         type:"PUT",
         data:"em",
         datatype:'json',
         success:function(result){
}
});

[HttpPut]
[OdataRoute("PutDataController")]
public async Taask<string> PutDataController(HttpRequestMessage par)
{
 //Do something
}

我试着给'async':也同样是false,但它确实有用

您应该在该ajax调用中添加一个错误函数,以便可以访问该异常。

var form = $("#form");
var data = form.serialize();
$.ajax({
    url: form.attr('action'),
    type: form.attr('method'),
    data: data,
    dataType: "json",
    success: function (message) {
        alert("GREAT!");
    },
    error: function (xhr, status, error) {
        alert("Error: " + xhr.responseText);
    }
});

尝试将数据设置为对象而不是字符串:

$.ajax({
         url:controller,
         type:"PUT",
         data: {myvar: "em"},
         datatype:'json',
         success:function(result){}
});

使用data: {myvar: "em"}代替data:"em"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM