更换Div类内容的JS错误

时间:2018-04-18 09:44:02

标签: javascript jquery html html5

我正在尝试替换类中的html内容。当我放置一些简单的东西时,它会起作用,例如<p>0</p>

但是当我提出以下内容时:

$('.festi-cart-menu-item').html('<a id="festi-cart"    class="
        festi-cart
        festi-cart-customize  
        festi-cart-menu  
        festi-cart-click        woocart-show    "
    href="https://example.com/cart/"
>
    <div style=" line-height: 20px !important; " class="festi-cart-content">

        <img class="festi-cart-icon" width="20" height="20"  align="absmiddle" src="//example.com/wp-content/plugins/woocommerce-woocartpro/static/images/icons/user/custom_icon.png?1524043934" /><img style="display: none;" class="festi-cart-icon festi-on-hover" width="20" height="20"  align="absmiddle" src="//example.com/wp-content/plugins/woocommerce-woocartpro/static/images/icons/user/on_hover/custom_icon.png?1524043934" />



        <span
            class="festi-cart-position budgeCounter position-right">
            <p>
                0            </p>
        </span>

    <span class="festi-cart-text-before-total">
                    </span>
        <span class="festi-cart-text-after-total">
                    </span>


        <span class="festi-cart-dropdown-arrow"><img src="https://example.com/wp-content/uploads/2018/04/path-2.png" alt="dropdown"></span>
</div>
</a> ');

这是错误的。

你能指出什么是错的吗?

2 个答案:

答案 0 :(得分:1)

您必须指定您的字符串变量是多行的。 这是可能的,因为ES6与

let string = `bla
bla
bla`;

如果没有ES6,你可以做的事情就是

var string = '<html>'+
                  '<body>'+
                      '<input>'+
                  '</body>'+
             '</html>';

答案 1 :(得分:0)

您的问题来自误解``var template在这种情况下的工作原理。这些主要用于创建单行和多行的字符串,您应该使用双后退``

如果你想使这项工作以正确的方式编码,你可以声明另一个变量,例如: var template = `<a>...</a> ` //just put your template here $('.festi-cart-menu-item').html(template); 并使用ES6语法new撰写模板。

在你的情况下,它看起来像这样:

constructor(){
    this.jokes = [
        new Joke("What did the cheese say when it looked in the mirror?", "Hello-Me (Halloumi)"),
        new Joke("What kind of cheese do you use to disguise a small horse?", "Mask-a-pony (Mascarpone)")
    ];
}