如何在Javascript中用标签连接2个变量

How to concat 2 vars with tags in Javascript?

本文关键字:标签 连接 2个 变量 Javascript      更新时间:2023-09-26

我只是有一个包含html标签的2 vars开关,我想连接它们,我也尝试了连接+,但奇怪的是它不起作用。

function html_with_category(){  
     var html_with_category = $('<div id="q_section" style="display:none</div>'); 
return html_with_category;  
     }
function html_without_category(){
    var html_without_category = $('<div class="q_rt_rowcell-1-title"></div></div><div class="om"></div>'); 
  return html_without_category; 
    }
 function html_last_div(){
       var html_last_div = $('</div></div></div></div>'); 
     return html_last_div;  
    }

var html_with_cat =  html_with_category();
var html_without_cat =  html_without_category(); 
var html_last_d = html_last_div();

我想收到一个var

 var concatdivs = html_with_cat + "" + html_last_d; 

和concatdiv看起来像

<div class="q_rt_rowcell-1-title"></div></div><div class="om"></div></div></div></div></div>

当您将一个HTML字符串传递给jQuery时,它会将其转换为DOM。

它没有将jQuery对象包装在一个原始HTML字符串周围,而是首先将HTML转换为元素。

因此,您不能创建一个带有div开始标记的jQuery对象,也不能创建另一个带有div-end标记的jQuery对象,然后将它们连接起来。

您必须在.中传递类似于格式良好的标记的内容

如果你想连接HTML的字符串(我通常建议不要这样做,因为它通常比处理DOM树更复杂),那么你需要将它们保持为字符串,直到你完成连接(然后你可以通过jQuery传递最后一个字符串)。

变量中没有HTML代码,您使用了$()函数将代码解析为DOM元素,这些元素包含在jQuery对象中。

如果不将字符串解析为元素,而是将其保留为字符串,则可以轻松地将HTML代码连接起来:

function html_with_category(){  
  var html_with_category = '<div id="q_section" style="display:none</div>'; 
  return html_with_category;  
}
function html_without_category(){
  var html_without_category = '<div class="q_rt_rowcell-1-title"></div></div><div class="om"></div>';
  return html_without_category; 
}
function html_last_div(){
  var html_last_div = '</div></div></div></div>';
  return html_last_div;
}
var html_with_cat = html_with_category();
var html_without_cat = html_without_category(); 
var html_last_d = html_last_div();
var concatdivs = html_with_cat + html_last_d;

如果你想把结果作为元素,你可以在连接字符串后这样做:

var concatdivs = $(html_with_cat + html_last_d);

注意:您应该检查字符串中HTML代码的语法。您在第一个字符串中缺少style属性的结束引号和结束>。在第二个和第三个字符串中,起始标记和结束标记相加不起来。在将代码转换为元素之前,标记必须与完整的元素匹配,否则将无法获得预期的结果。

相关文章: