我的代码如下:
<script>
var i = 2;
$("document").ready(function(){
$("#newrow").click(function(){
$("#maintable").append('<tr>
<td><input type="text" name="dept_" + i size="5" maxlength="5" /></td>
<td><input type="text" name="hours_" + i size="5" maxlength="1" /></td>
</tr>');
});
i = i + 1;
});
</script>
每当我运行它时,JavaScript在$(“#maintable”)。append line上给我一个“Uncaught SyntaxError:Unexpected Token ILLEGAL”。
对于我的生活,我无法弄清楚语法错误是什么。
附加实际元素不是问题,因为我只尝试了'<td></td>'
并且出现了同样的错误。
答案 0 :(得分:13)
如果没有特殊处理,你不能在多行上打破一个字符串。要么全部放在一行上,要么用反斜杠转义换行符:
'<tr>\
<td><input type="text" name="dept_"' + i + ' size="5" maxlength="5" /></td>\
<td><input type="text" name="hours_"' + i + ' size="5" maxlength="1" /></td>\
</tr>'
答案 1 :(得分:2)
<script>
var i = 2;
$(document).ready(function(){
$("#newrow").click(function(){
var html = '<tr>';
html += '<td><input type="text" name="dept_"'+i+' size="5" maxlength="5" /></td>';
html += '<td><input type="text" name="hours_"'+i+' size="5" maxlength="1" /></td>';
html += '</tr>'
$("#maintable").append(html);
});
i++;
});
</script>
文档没有引号,现在你的“就绪”功能不起作用! 变量“i”根本没有添加! 除非您使用换行符,添加到变量或类似的东西,否则不能将字符串划分为多行。