2015-07-28 37 views
1

我想插入一个使用javascript的元素的整个块。我需要把它们放在一个带有box-group的div元素之前。我看到问题是“”。我怎样才能一次插入。用Javascript插入HTML类/ jQuery

$(".box-group").before("<div class="box"><h2>header</h2><div class="visible-desktop visible-tablet hidden-phone row-fluid"><ul class="nav nav-pills nav-stacked pull-left span6"><li><a href="#">item</a></li><li><a href="#">Item</a></li><li><a href="#">Item</a></li></ul><ul class="nav nav-pills nav-stacked pull-left span6"><li><a href="#">Item</a></li><li><a href="#">Item</a></li><li><a href="#">Item</a></li></ul></div><div class="hidden-desktop hidden-tablet visible-phone row-fluid"><ul class="nav nav-pills nav-stacked pull-left span6"><li><a href="">Item</a></li><li><a href="#">Item</a></li><li><a href="#">Item</a></li><li><a href="#">Item</a></li><li><a href="#">Item</a></li><li><a href="#">Item</a></li></ul></div><div class="clearfix"></div></div>"); 

的HTML代码:

<div class="box"> 
    <h2>header</h2> 
    <div class="visible-desktop visible-tablet hidden-phone row-fluid"> 
    <ul class="nav nav-pills nav-stacked pull-left span6"> 
     <li> 
      <a href="#">item</a> 
     </li> 
     <li> 
      <a href="#">Item</a> 
     </li> 
     <li> 
      <a href="#">Item</a> 
     </li> 
    </ul> 
    <ul class="nav nav-pills nav-stacked pull-left span6"> 
     <li> 
      <a href="#">Item</a> 
     </li> 
     <li> 
      <a href="#">Item</a> 
     </li> 
     <li> 
      <a href="#">Item</a> 
     </li> 
    </ul> 
</div> 
<div class="hidden-desktop hidden-tablet visible-phone row-fluid"> 
    <ul class="nav nav-pills nav-stacked pull-left span6"> 
     <li> 
      <a href="#">Item</a> 
     </li> 
     <li> 
      <a href="#">Item</a> 
     </li> 
     <li> 
      <a href="#">Item</a> 
     </li> 
     <li> 
      <a href="#">Item</a> 
     </li> 
     <li> 
      <a href="#">Item</a> 
     </li> 
     <li> 
      <a href="#">Item</a> 
     </li> 
    </ul> 
    </div> 
    <div class="clearfix"></div>  
</div> 

我想这样做是为了与VWO一个A/B测试。

(我不能把与普通编辑器中的内容,DOM结构是在每一页上不同的测试运行。)

+1

需要用\逃逸,或使用单引号'''一起包装你的字符串:看http://stackoverflow.com/questions/7618214/why “单引号字符串首选双引号字符串在js – Hacketo

+0

”和“几乎在JavaScript中可以互换,任何地方”引用一个字符串“你也可以'引用一个字符串',或' div class ='upper'>''有两个字符串分隔符,这应该足够了(直到你开始生成在PHP中生成html的javascript - 那么这是一个逃脱的报价噩梦! ! –

回答

1

我换成单引号双引号。

如果你想插入HTML像你的榜样,您必须首先逃出所有"\,因此它成为\"试试这个

$(".box-group").before("<div class='box'><h2>header</h2><div class='visible-desktop visible-tablet hidden-phone row-fluid'><ul class='nav nav-pills nav-stacked pull-left span6'><li><a href='#'>item</a></li><li><a href='#'>Item</a></li><li><a href='#'>Item</a></li></ul><ul class='nav nav-pills nav-stacked pull-left span6'><li><a href='#'>Item</a></li><li><a href='#'>Item</a></li><li><a href='#'>Item</a></li></ul></div><div class='hidden-desktop hidden-tablet visible-phone row-fluid'><ul class='nav nav-pills nav-stacked pull-left span6'><li><a href=''>Item</a></li><li><a href='#'>Item</a></li><li><a href='#'>Item</a></li><li><a href='#'>Item</a></li><li><a href='#'>Item</a></li><li><a href='#'>Item</a></li></ul></div><div class='clearfix'></div></div>"); 
0

用自己的例子,它应该是<div class=\"box\">(...)</div>