2013-02-26 46 views
44

下面是一個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其他數據的任何替代方法?

回答

77

閱讀這個Bug問題:http://bugs.jquery.com/ticket/11586

引用原始服務器刪除由Request-URI標識的資源RFC 2616 Fielding

DELETE方法請求。

所以你需要傳遞的URI

$.ajax({ 
    url: urlCall + '?' + $.param({"Id": Id, "bolDeleteReq" : bolDeleteReq}), 
    type: 'DELETE', 
    success: callback || $.noop, 
    error: errorCallback || $.noop 
}); 
+0

所以你可以在jQuery 1.7.2之前用DELETE發送數據? – user568109 2013-10-10 09:09:03

+0

@ user568109我剛剛檢查了jQuery的各種版本,似乎沒有版本支持它..(*我試圖下降到1.3.2 *) – 2013-10-10 10:30:52

+2

@ user568109但說實話,我不知道如果jquery切斷它們或瀏覽器.. – 2013-10-10 10:51:00

-4
deleteRequest: function (url, Id, bolDeleteReq, callback, errorCallback) { 
    $.ajax({ 
     url: urlCall, 
     type: 'DELETE', 
     data: {"Id": Id, "bolDeleteReq" : bolDeleteReq}, 
     success: callback || $.noop, 
     error: errorCallback || $.noop 
    }); 
} 

注意:使用在headers JQuery的1.5:

的附加標題的鍵/值對的映射被引入到與請求一起發送。該設置在beforeSend函數被調用之前設置;因此,可以在beforeSend函數中覆蓋標題設置中的任何值。

+0

感謝您的答覆,什麼做的標準方式的數據?標題或數據? – Prats 2013-02-26 12:48:08

+22

'數據'不適用於'DELETE'。 – 2013-02-26 13:25:32