2015-06-07 109 views
0

我想推多值多維數組。但我無法成功。javascript array multidimensional push

var e = []; 
var data = []; 
var element = {}, items = []; 
e = getelement("alan"); 

for(s=0;s < e.length ; s++){ 

element.resim = $("#"+e[s]).val(); 
element.baslik = $("#"+e[s]).val(); 
element.icerik = $("#"+e[s]).val(); 
element.links = $("#"+e[s]).val(); 
items.push(element); 

} 


c = JSON.stringify(items); 

è對象源:

'0' => "resim" '1' => "baslik" '2' => "icerik" '3' => "link" 

對象c來源:

[ 
    {"resim":"4","baslik":"4","icerik":"4","links":"4"}, 
    {"resim":"4","baslik":"4","icerik":"4","links":"4"}, 
    {"resim":"4","baslik":"4","icerik":"4","links":"4"}, 
    {"resim":"4","baslik":"4","icerik":"4","links":"4"} 
] 
+2

預期結果是什麼?你能否描述你想要達到的目標,所以我們可以幫忙? –

回答

2

你永遠只能存放在element

單個對象每次圍繞環路去一次編輯現有對象然後按下另一個參考它到陣列上。

每次繞着循環時創建一個新對象。

for(s=0;s < e.length ; s++){ 
    element = {}; 
1

您每次推入數組時都沒有創建新對象,因此您只需修改同一對象並將其推入數組中4次。您需要在每次循環時創建一個新對象,如下所示:

var e = []; 
var data = []; 
var items = []; 
e = getelement("alan"); 

for(s=0;s < e.length ; s++){ 
    var element = {}; 
    element.resim = $("#"+e[s]).val(); 
    element.baslik = $("#"+e[s]).val(); 
    element.icerik = $("#"+e[s]).val(); 
    element.links = $("#"+e[s]).val(); 
    items.push(element); 
} 


c = JSON.stringify(items);