提问者:小点点

Jquery append不能用于动态显示


我正在做一个电子商务的webapp。 我已经在LocalStorage的一个cart对象中存储了项目。 我试图使用jquery append方法在html的'ul'标记中动态显示购物车中的项目列表。 但它在浏览器中仅以字符串的形式显示整个html(mystr)。 在“ul”标签的HTML部分下面:

        <div class="my-3">
            <ul class="list-group" id="items">
                <li class="list-group-item d-flex justify-content-between align-items-center">
                    Cras justo odio
                    <span class="badge badge-primary badge-pill">14</span>
                </li>
                <li class="list-group-item d-flex justify-content-between align-items-center">
                    Dapibus ac facilisis in
                    <span class="badge badge-primary badge-pill">2</span>
                </li>
                <li class="list-group-item d-flex justify-content-between align-items-center">
                    Morbi leo risus
                    <span class="badge badge-primary badge-pill">1</span>
                </li>
            </ul>
        </div>

下面是用于动态显示存储在LocalStorage中的购物车项目的javascript代码:

    for( var item in cart){
       var qty = cart[item][0];
       var name = cart[item][1];
       mystr = `li class="list-group-item d-flex justify-content-between align-items-center">
                    $(name)
                    <span class="badge badge-primary badge-pill">$(qty)</span>
                </li> ` ;

       $('#items').append(mystr);
    }

如果有人有任何想法,请回复它。


共1个答案

匿名用户

li的开头方括号丢失,同时缺少使用${name}和${qty}而不是$(name)和$(qty)的方括号

有关更多信息,请访问multiline-strings-in-es6-javascript