我有以下一些代码,我只是通过在firebug中运行来尝试
$.ajax({ type:"POST", url:"http://mpdomain/WebService.asmx/Operation", data: "{'parameter1': '44906'}", contentType: "application/json;charset=utf-8", dataType: "json", success: function(data) { alert("succsess") }, error: function(e, ts, et) { alert(ts) } })
理论上它应该有效.但是,错误处理程序被触发,并且ts被简单地设置为"错误".如何获得有关出错的更多细节?
$.ajax({ type:"POST", url:"http://mpdomain/WebService.asmx/Operation", data: "{'parameter1': '44906'}", contentType: "application/json;charset=utf-8", dataType: "json", success: function(data) { alert("succsess") }, error: function(ts) { alert(ts.responseText) } })
jQuery给出的错误消息不是很具描述性.它可以是"超时","错误","未修改"或"解析错误".http://api.jquery.com/jQuery.ajax/所以你可以得出的结论是,它不是超时,也不是你得到的修改或解析错误.
确保在Firebug中看到请求设置为正确的地址并且正在设置正确的数据.您还可以查看响应,因此如果您还可以访问服务器代码,则快速而肮脏的方式只是回显服务器端的内容并使用Firebug查看响应.
此外,我不确定这是否是一个问题,但尝试将数据设置为{parameter1:44906}(基本上删除引号,所以你传入一个对象,而不是一个字符串).