2011-09-24 61 views
0

你好,我有一個prboblem與下面的代碼:jQuery的創建數組問題與

function loadOptions(num){ 
listTabs = new Array(); 
for(var i = 1 ; i < parseInt(num) + 1 ; i++){ 
    var tabActu = { 
     'name':'tab'+i, 
     'src':'urlImatge' 
     }; 
    listTabs.add(tabActu); 
    $.each(listTabs,function(key,value){ 
     alert(key+" : "+value); 
    }); 
} 

}

我需要創建等於num參數元素的列表。我找不到錯誤。

+4

請參閱http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235 ... 52天,0票和0票接受O_o。 –

+1

請返回並接受您之前問題的一些答案。它會幫助你在將來得到答案。 +1到@RobW –

回答

2

你在錯誤的JavaScript錯誤控制檯看?

Javascript數組沒有.add()方法。您可以使用.push()

function loadOptions(num){ 
    listTabs = new Array(); 
    var len = parseInt(num, 10); 
    for (var i = 1 ; i < len + 1 ; i++) { 
     var tabActu = { 
      'name':'tab' + i, 
      'src':'urlImatge' 
      }; 
     listTabs.push(tabActu); 
     $.each(listTabs,function(key,value){ 
      alert(key+" : "+value); 
     }); 
    } 
} 

除了更改爲.push(),parseInt函數必須始終傳遞的基數值,你應該從循環中刪除函數調用parseInt函數,所以它不要求每次迭代。此外,您還沒有在此處列出listTabs,因此使其成爲全局變量。這是你的意圖嗎?

1

燮的Francesc

陣列沒有一個add方法.....使用推