jQuery追加语法错误

时间:2012-03-31 00:01:26

标签: javascript jquery syntax-error

我的代码如下:

        <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>'并且出现了同样的错误。

2 个答案:

答案 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”根本没有添加! 除非您使用换行符,添加到变量或类似的东西,否则不能将字符串划分为多行。