2010-11-22 37 views
0

为什么我在第一个循环中获得了“item”的正确值,但是在每个循环中我都得到了未定义的值?我如何保留“物品”的价值?当输入检查时数组项丢失值

下面的代码:

for (item in products_custom){ 
    console.log(item); 
    $("input:checked").each(function(){ 
     console.log(item); 
    }); 
} 

非常感谢你的帮助。

+1

这是你正在运行的确切代码? – 2010-11-22 08:22:07

回答

2

你没有正确关闭你的each调用,所以如果那是你真正的代码,它会给出语法错误。应该是:

for (var item in products_custom){ 
    console.log(item); 
    $("input:checked").each(function(){ 
     console.log(item); 
    }); 
} 

注意我们使用var来避免全局。但是,这些问题都不符合您描述的问题,并且在修复语法错误后,它会起作用(jsFiddle)。

+0

+1,这是我在这里看到的唯一问题。 – Alex 2010-11-22 08:26:11

+0

对不起,在真实的代码中,每个通话都是关闭的。试图简化代码时,这只是一个错字。编辑于OP – donkapone 2010-11-22 08:29:20

+1

@donkapone,还有一个额外的权利。请只张贴你自己测试过的代码。 – 2010-11-22 08:32:22