我将此变量设置在页面setVars = {"n":"2","m":"1","degree":"3","p":"2"}
我想迭代setVars中的每个元素,但jquery的each()函数不起作用。
这就是我所拥有的 -
$(setVars).each(function(key, value) {
elementId = '#' + key+ '-wrapper';
}
但是key
在第一次迭代时设置为0,并且value
由于某种原因设置为完整的setVars对象。它没有进行第二次迭代,当我逐步完成并尝试进入第二次迭代时,它会中断。
答案 0 :(得分:2)
应该像我根据http://api.jquery.com/jQuery.each/
那样相信$.each(setVars, function(key, value) {
elementId = '#' + key+ '-wrapper';
});
setVars不是DOM元素的集合,它是一个对象
答案 1 :(得分:1)
您使用.each()
that's meant for iterating through jQuery objects代替$.each()
that's meant for iterating through objects and arrays。试试这个:
$.each( setVars, function(key, value) {
elementId = '#' + key+ '-wrapper';
});
答案 2 :(得分:1)
你不需要JQuery。此外,我可能是错的,但你不希望在你永远看不到的对象属性名称周围引用:
setVars = {n:"2",m:"1",degree:"3",p:"2"}
并且
for(i in setVars){
console.log("key: ",i," value: ", setVars[i]); // demonstration of how to access key and value
elementId = '#' + i + '-wrapper';
}