jQuery使用变量字符串追加html元素
我是JQuery的新手。我试图将数组表单中声明的对象属性附加到html元素,如下所示 HTML: JQuery脚本:jQuery使用变量字符串追加html元素,jquery,Jquery,我是JQuery的新手。我试图将数组表单中声明的对象属性附加到html元素,如下所示 HTML: JQuery脚本: var obj{ property : {'apple', 'orange', 'banana'} } for(i=0; i<=2; i++){ $("#container p:eq("+i+")").append(obj.property[i]); } 希望得到这个: <p>some text apple</p> <p>some
var obj{
property : {'apple', 'orange', 'banana'}
}
for(i=0; i<=2; i++){
$("#container p:eq("+i+")").append(obj.property[i]);
}
希望得到这个:
<p>some text apple</p>
<p>some text orange</p>
<p>some text banana</p>
虽然我的Firebug控制台没有显示任何错误报告,但根本没有显示任何附件
我做错了什么?还有,如果是更好的做法,有没有办法用.each替换for循环
谢谢您的属性列表格式不正确。数字索引列表文字是使用方括号而不是花括号形成的 你发布的代码应该给你一个语法错误。如果不是,很可能根本就没有被执行 这里有一个固定版本:
var obj = {
property : ['apple', 'orange', 'banana']
}
for(i=0; i<=2; i++){
$("#container p:eq("+i+")").append(obj.property[i]);
}
您的属性列表格式不正确。数字索引列表文字是使用方括号而不是花括号形成的 你发布的代码应该给你一个语法错误。如果不是,很可能根本就没有被执行 这里有一个固定版本:
var obj = {
property : ['apple', 'orange', 'banana']
}
for(i=0; i<=2; i++){
$("#container p:eq("+i+")").append(obj.property[i]);
}
如另一个答案所述,obj应定义为:
var obj = {
property : ['apple', 'orange', 'banana']
}
for循环可以工作,但使用它似乎更好。如果没有其他原因,只是因为您不必硬编码值-如果您使用for,那么如果您更改了属性的数量,您也必须更新该循环。我会这样做:
$("#container > p").each(function(i) { $(this).append(obj.property[i]); });
如另一个答案所述,obj应定义为:
var obj = {
property : ['apple', 'orange', 'banana']
}
for循环可以工作,但使用它似乎更好。如果没有其他原因,只是因为您不必硬编码值-如果您使用for,那么如果您更改了属性的数量,您也必须更新该循环。我会这样做:
$("#container > p").each(function(i) { $(this).append(obj.property[i]); });