我尝试过几次不同的写作,但它只是不起作用。以下代码是否有明显错误?我试图让它插入一个名称值不断变化的新表单输入。
<script>
$("document").ready(function(){
console.log('wtf is going on');
var i = 0;
var insert = '<div class="form-group"> +
<label>Categories</label>+
<input type="text" class="form-control" name="category' +i+'" value="test"></div>';
$(".lolz").click(function(){
i++;
$(".lolz").before(insert)});
});
</script>
答案 0 :(得分:1)
问题在于insert
字符串中的换行符:
var insert = '<div class="form-group">
<label>Categories</label>
<input type="text" class="form-control" name="category' + i +
'" value="test"></div>';
JavaScript不支持多行字符串,而没有明确告诉解释器该字符串是多行的。
尝试用以下代码替换这些行:
var insert = '<div class="form-group"> \
<label>Categories</label> \
<input type="text" class="form-control" name="category' + i +
'" value="test"></div>';
斜线(\
)&#34;逃脱&#34;下面的换行符,它基本上告诉JavaScript解释器&#34;这个字符串在下一行继续&#34;。
稍微更维护一致的方法是使用字符串连接,如下所示:
var insert = '<div class="form-group">' +
'<label>Categories</label>' +
'<input type="text" class="form-control" name="category' + i +
'" value="test"></div>';
答案 1 :(得分:-1)
试试这个......
var insert = '<div class="form-group">'
insert += ' <label>Categories</label>'
insert += '<input type="text" class="form-control" name="category' +i+'" value="test"></div>';