2012-07-06 110 views
4

我試圖通過AJAX發送一些數據與jQueryjQuery的AJAX數據兩個變量

var name = $(".name").attr("data-name"); 
var value = $(".value").attr("data-value"); 

$.ajax({ 
    url: 'panel.php', 
    type: 'post', 
    data: {name: value} 
}).done(function(){ 
    alert("saved!"); 
}); 

因此,如何能名稱和值是兩個變量。現在只有價值是一個變量,但名稱如何?

乾杯

+0

呼叫前建立你的對象,並設置名稱屬性那裏。 – TheZ 2012-07-06 19:34:44

+0

你的錯誤功能在哪裏?我知道一些人喜歡.done()功能,但是我認爲如果您的{} – Fallenreaper 2012-07-06 19:35:44

回答

14

試試這個:

var name = "data-name"; 
var value = "data-value"; 
var dataObj = {}; 

dataObj[name]=value; 

$.ajax({ 
    url: 'panel.php', 
    type: 'post', 
    data: dataObj, 
}).done(function(){ 
    alert("saved!"); 
});​ 
+1

工作成功並且出錯,它會更好看!謝了哥們 – 2012-07-06 19:45:04

1

你需要把它換到一個DTO(數據傳輸對象):

var obj = {}; 
obj.name = name; 
obj.value = value; 

//Convert to a DTO Object 
var dto = { 'myData': obj };