2012-07-29 25 views
1

我正在嘗試使這項工作。如何爲jQuery文章輸入動態數據參數?

function postCharacter(id, type) { 
    type = type; 
    id = id; 
    var data = type + ':' + id; 
    $.post('', {data}); 
} 

希望從這個例子中你可以看到我想要達到的目標。但是,如果沒有,我想要做的。

$.post('', {a, b}); 

兩個ab是是動態值,我怎麼能輸入jQuery的動態數據參數後?我所嘗試的不幸沒有奏效。

+0

換句話說,您正試圖在您的http請求正文中發送更多參數(鍵值對)? – deostroll 2012-07-29 20:10:33

回答

0

而不是

var data = type + ':' + id; 
$.post('', {data}); 

做到這一點

var data = { type: id }; 
$.post('', data); 

如果你傳遞一個JavaScript對象,jQuery將會通過並將這些請求放入你的請求中。通過這種方式,您可以爲請求添加儘可能多的動態值,而無需生成字符串。如果要添加第二個參數,它看起來像這樣(其中id和ID2是變量):

var data = { type: id, type1: id2 } 

而且,你不需要有這兩條線:

type = type 
id = id 

爲它們已經被設置在函數參數中。

+0

謝謝,很好的答案,很好,清楚:) – 2012-07-29 20:20:37

1

您需要先創建對象,然後添加屬性:

var data = {}; 
data[type] = id; 

你不需要你的函數的前兩行所有;他們什麼都不做。

然後$.post調用應該是:

$.post(url, data); 
0

數據是一個對象的話,你可以這樣類似:

function postCharacter(id, type) { 
    var data = {}; 
    dara[type] = id; 
    $.post('', data); 
}