基本上这里是代码的工作线(jquery / javascript):
$('<label>Option ' + (i + 1) + '<span class="small">Enter text</span></label><input type="text" name="option[]"><input class="extra" type="checkbox" name="checks[]" value=' + i + '>').appendTo('#container');
i
与上述代码相关。我想要的是在这里涉及i
的价值:
name="checks['+i+']"
但它似乎并不喜欢这一点。我对这种结论感到有些困惑,所以如果有人能向我解释,我会很感激。
答案 0 :(得分:0)
看不到问题。 为了便于阅读/调试,请尝试
var html = '<label>Option ' + (i + 1) + '<span class="small">Enter text</span></label>'+
'<input type="text" name="option['+i+']">'+
'<input class="extra" type="checkbox" name="checks['+i+']" value="'+i+'">'
$(html).appendTo('#container');
答案 1 :(得分:0)
一切正常,here's a demo。
检查checkbox
会显示此输出:
<input class="extra" type="checkbox" name="checks[0]" value="0">
尝试从该jsfiddle中复制并粘贴该行,看看是否有效......
答案 2 :(得分:0)
我在jsfiddle中尝试了上面的代码,但没有遇到任何问题
for(i = 0 ; i < 2; i++){
var html = '<label>Option ' + (i + 1) + '<span class="small">Enter text</span></label>'+
'<input type="text" name="option['+i+']">'+
'<input class="extra" type="checkbox" name="checks['+i+']" value="'+i+'">';
alert(html)
}
尝试使用parseInt ....也可以详细说明你的问题。
答案 3 :(得分:0)
将html文本保留为数组元素,并且更易于阅读和维护。也可能更快地连接。
var htmlText = [
'<label>Option ' + (i + 1) + '<span class="small">Enter text</span></label>',
'<input type="text" name="option[]">',
'<input class="extra" type="checkbox" name="checks[' + i + ']" value=' + i + '>'
].join("");