以下是我对DELETE
请求的Ajax请求:
deleteRequest: function (url, Id, bolDeleteReq, callback, errorCallback) {
$.ajax({
url: urlCall,
type: 'DELETE',
headers: {"Id": Id, "bolDeleteReq" : bolDeleteReq},
success: callback || $.noop,
error: errorCallback || $.noop
});
}
是否有其他方法可以传递除headers
以外的数据?
答案 0 :(得分:91)
阅读此错误问题:http://bugs.jquery.com/ticket/11586
DELETE
方法请求源服务器删除Request-URI 标识的资源。
所以你需要传递URI中的数据
$.ajax({
url: urlCall + '?' + $.param({"Id": Id, "bolDeleteReq" : bolDeleteReq}),
type: 'DELETE',
success: callback || $.noop,
error: errorCallback || $.noop
});
答案 1 :(得分:0)
我能够通过 ajax方法成功地通过data属性。这是我的代码
$.ajax({
url: "/api/Gigs/Cancel",
type: "DELETE",
data: {
"GigId": link.attr('data-gig-id')
}
})
link.attr 方法仅返回'data-gig-id'的值。
答案 2 :(得分:-5)
deleteRequest: function (url, Id, bolDeleteReq, callback, errorCallback) {
$.ajax({
url: urlCall,
type: 'DELETE',
data: {"Id": Id, "bolDeleteReq" : bolDeleteReq},
success: callback || $.noop,
error: errorCallback || $.noop
});
}
注意:在JQuery 1.5中引入了headers
的使用。:
要与请求一起发送的其他标头键/值对的映射。在调用beforeSend函数之前设置此设置;因此,可以从beforeSend函数中覆盖标题设置中的任何值。