未捕获的SyntaxError Multiple Appends

时间:2014-02-25 10:39:12

标签: jquery append

我在将多个对象附加到UL列表时遇到问题。错误显示在第68行,单独注释掉

未捕获的SyntaxError:意外的标记< Bellow

  

<li data-role="list-divider">' + obj.storename + '</li>   错误

Javascript

    $('.data').append(

    '<ul data-role="listview" data-inset="true">
       <li data-role="list-divider">' + obj.storename + '</li>
       <li>' + obj.notes + '</li>
       <li>' + obj.rejected + '</li>
       <li>' + obj.offf + '</li>
     </ul>'
    );

2 个答案:

答案 0 :(得分:3)

您的字符串格式不正确。它会产生语法错误,因为解析器不知道> <的含义。虽然您可以像这样使用\

$('.data').append(
    '<ul data-role="listview" data-inset="true">\
        <li data-role="list-divider">' + obj.storename + '</li>\
        <li>' + obj.notes + '</li>\
        <li>' + obj.rejected + '</li>\
        <li>' + obj.offf + '</li>\
    </ul>'
);

但我宁愿使用+运算符连接字符串:

$('.data').append(
    '<ul data-role="listview" data-inset="true">' +
    '<li data-role="list-divider">' + obj.storename + '</li>' +
    '<li>' + obj.notes + '</li>' +
    '<li>' + obj.rejected + '</li>' +
    '<li>' + obj.offf + '</li>' +
    '</ul>'
);

答案 1 :(得分:1)

字符串连接

$('.data').append(
    '<ul data-role="listview" data-inset="true">\
       <li data-role="list-divider">' + obj.storename + '</li>\
       <li>' + obj.notes + '</li>\
       <li>' + obj.rejected + '</li>\
       <li>' + obj.offf + '</li>\
     </ul>');

您可以使用\表示字符串在下一行中继续,或使用+作为连接运算符

$('.data').append(
    '<ul data-role="listview" data-inset="true">'
    +'<li data-role="list-divider">' + obj.storename + '</li>'
    +'<li>' + obj.notes + '</li>'
    +'<li>' + obj.rejected + '</li>'
    +'<li>' + obj.offf + '</li>'
    +'</ul>');