Jquery用for创建数组问题

时间:2011-09-24 21:33:48

标签: jquery arrays for-loop each

您好我有下一个代码的问题:

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参数的元素列表。我找不到错误。

2 个答案:

答案 0 :(得分: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 :(得分:1)

Sup Francesc

阵列没有添加方法.....使用push