$.ajax({
url : 'saveeolref',
type:"POST",
cache:false,
data:{
"probId": probid,
"rowid": rowid,
"ord": order},
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (response) {
alert(response);
},
error: alert('fail')
});
<button type="button" onclick="updateRef()">Submit</button>
$.ajax({
url : 'saveeolref',
type:"POST",
cache:false,
data:{
"probId": probid,
"rowid": rowid,
"ord": order},
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (response) {
alert(response);
},
error: alert('fail')
});
答案 0 :(得分:0)
如果您使用 jQuery 1.9.0 以上版本,请尝试使用 method
属性而不是 type
。
还尝试在“网络”浏览器的调试面板中查看请求的发起者,以了解 GET 请求从代码中的何处发送。
dataType: "json"
覆盖 type: "POST"
的原因是因为 documentation 指定了以下内容:
"json":将响应计算为 JSON 并返回一个 JavaScript 对象。具有回调占位符的跨域“json”请求,例如?callback=?, 使用 JSONP 执行,除非请求在其请求选项中包含 jsonp: false 。 JSON 数据以严格的方式解析;任何格式错误的 JSON 都会被拒绝并引发解析错误。从 jQuery 1.9 开始,空响应也会被拒绝;服务器应改为返回 null 或 {} 响应。 (有关正确 JSON 格式的更多信息,请参阅 json.org。)
也就是说,jQuery 将请求移动到 JSONP 调用而不是 POST 调用。