0
如果我做一個jQuery的AJAX調用:
$.ajax({url: 'example.com', data: {bar: 2}).done(handleResponse);
有沒有什麼辦法可以讓我通過Ajax請求(即數據選項。)從響應處理程序中的參數?換句話說,我希望能夠做到:
handleResponse = function(response) {
var requestData = response.something.something.data;
// requestData.bar == 2
}
而僅僅是明確的,我知道我可以通過使用「部分」從像下劃線庫做到這一點,即:
var data = {bar: 2};
$.ajax({url: 'example.com', data: data).done(_(handleResponse).partial(data));
handleResponse = function(data, response) {...
但我只是想知道是否有任何其他(更乾淨)的方式來使用參數jQuery傳遞給響應處理程序。
這太棒了,但有幾件事情:1)是不是可以從參數中獲取該信息(因爲將處理程序綁定到另一個'this'通常很方便,這會讓我失去'this.data')? 2)'this.data'看起來像'bar = 1&bax = 2 &...';數據是否存在於更友好的(即JS對象字面量)形式中? – machineghost
1)正確的,你不能得到它的參數。 2)這非常有趣...我沒想到它會給你$ .param()的d版本。如果你不想自己寫一個,可以使用現有的querystring解析插件。 –
Gotcha;好,response.foo.request.data本來不錯,但'parse(this.data)'比沒有好。謝謝。 – machineghost