Javascript 合并元素的子元素(如果它们具有相同的内容)
我有一个嵌套的列表,每个级别都有一些文本和嵌套在其中的列表。我必须检查每个级别的文本是否相同-如果是,我想将元素合并在一起,这样文本就不会重复 我的HTML:Javascript 合并元素的子元素(如果它们具有相同的内容),javascript,jquery,dom,Javascript,Jquery,Dom,我有一个嵌套的列表,每个级别都有一些文本和嵌套在其中的列表。我必须检查每个级别的文本是否相同-如果是,我想将元素合并在一起,这样文本就不会重复 我的HTML: <ul class="ordered-cat"> <li class="item-0 level-0-0"> <span class="text">dom</span> <ul class="inner"> <
<ul class="ordered-cat">
<li class="item-0 level-0-0">
<span class="text">dom</span>
<ul class="inner">
<li class="item-1 level-1-1">
<span class="text">kuh</span>
<ul class="inner">
<li class="item-2 level-2-2">
<span class="text">nap</span>
</li>
</ul>
</li>
</ul>
</li>
<li class="item-0 level-1-0">
<span class="text">dom</span>
<ul class="inner">
<li class="item-2 level-2-1">
<span class="text">kuh</span>
<ul class="inner">
<li class="item-3 level-3-2">
<span class="text">pri</span>
</li>
</ul>
</li>
</ul>
</li>
<li class="item-0 level-2-0">
<span class="text">dom</span>
<ul class="inner">
<li class="item-3 level-3-1">
<span class="text">kuh</span>
<ul class="inner">
<li class="item-4 level-4-2">
<span class="text">pripi</span>
</li>
</ul>
</li>
</ul>
</li>
</ul>
-
多姆
-
库赫
-
打盹
-
多姆
-
库赫
-
脉波重复间隔
-
多姆
-
库赫
-
普里皮
预期结果:
<ul class="ordered-cat">
<li class="item-0 level-0-0">
<span class="text">dom</span>
<ul class="inner">
<li class="item-1 level-1-1">
<span class="text">kuh</span>
<ul class="inner">
<li class="item-2 level-2-2">
<span class="text">nap</span>
</li>
<li class="item-3 level-3-2">
<span class="text">pri</span>
</li>
<li class="item-4 level-4-2">
<span class="text">pripi</span>
</li>
</ul>
</li>
</ul>
</li>
</ul>
-
多姆
-
库赫
-
打盹
-
脉波重复间隔
-
普里皮
我的jquery尝试:
function cleanMore() {
for (i = 0; i < 7; i++) {
var myarray = [];
$('.item-' + i + '').each(function () {
var beseda = $(this).children('.text').text();
if (jQuery.inArray(beseda, myarray) !== -1) {
myarray.push(beseda);
}
});
for (j = 0; j < myarray.length; j++) {
$('.item-' + i + '').each(function () {
if () { }
});
}
}
}
函数cleanMore(){
对于(i=0;i<7;i++){
var myarray=[];
$('.item-'+i+'')。每个(函数(){
var beseda=$(this.children('.text').text();
if(jQuery.inArray(beseda,myarray)!=-1){
myarray.push(beseda);
}
});
对于(j=0;j
我试图逐个检查每个级别并检查它们的内容,但我被困在了必须检查重复项并将它们合并到一个元素的部分