【发布时间】:2018-08-16 22:25:21
【问题描述】:
我的管理区域创建了一个代码(ol 标记),用于在前端站点中创建一个菜单(查看附加 img)。
我的程序代码是这样的(*):
<ol class="default vertical" id="MyMenu" style="">
<li>
<span id="title-item-28xvn0co4m2ijeinczh1" class="">item 01</span>
<!-- Button to control edit/delete li element -->
<div class="button btn-modify-row" onclick="modifyLi('28xvn0co4m2ijeinczh1')">
<i class="fas fa-pencil-alt"></i>
</div>
<div class="button btn-delete-row" onclick="removeLi('28xvn0co4m2ijeinczh1')">
<i class="far fa-trash-alt"></i>
</div>
<!-- Button to control edit/delete li element -->
<ol>
<li id="sd28xa19jmpjeincpmd" data-url="www.domain.com" data-target="_blank" data-target-int="3" data-parent="false" class="">
<span id="title-item-sd28xa19jmpjeincpmd" class="myClassUrl">sub-Item-01</span>
<!-- Button to control edit/delete li element -->
<div class="button btn-modify-row" onclick="modifyLi('sd28xa19jmpjeincpmd')">
<i class="fas fa-pencil-alt"></i>
</div>
<div class="button btn-delete-row" onclick="removeLi('sd28xa19jmpjeincpmd')">
<i class="far fa-trash-alt"></i>
</div>
<!-- Button to control edit/delete li element -->
</li>
</ol>
</li>
<li id="vqwq4ekze3qjeiogpye" data-url="www.domain.com" data-target="_blank" data-target-int="3" data-parent="true">
<span id="title-item-vqwq4ekze3qjeiogpye" class="myClassUrl">item-02</span>
<!-- Button to control edit/delete li element -->
<div class="button btn-modify-row" onclick="modifyLi('vqwq4ekze3qjeiogpye')">
<i class="fas fa-pencil-alt"></i>
</div>
<div class="button btn-delete-row" onclick="removeLi('vqwq4ekze3qjeiogpye')">
<i class="far fa-trash-alt"></i>
</div>
<!-- Button to control edit/delete li element -->
<ol style="">
<li id="x6sqmi7seucjeiogt4f" data-url="www.domain.com" data-target="_self" data-target-int="2" data-parent="false" class="">
<span id="title-item-x6sqmi7seucjeiogt4f" class="myClassUrl">sub-item-02-01</span>
<!-- Button to control edit/delete li element -->
<div class="button btn-modify-row" onclick="modifyLi('x6sqmi7seucjeiogt4f')">
<i class="fas fa-pencil-alt"></i>
</div>
<div class="button btn-delete-row" onclick="removeLi('x6sqmi7seucjeiogt4f')">
<i class="far fa-trash-alt"></i>
</div>
<!-- Button to control edit/delete li element -->
</li>
<li id="ppfxvunix5djeiogwzq" data-url="www.domain.com" data-target="_top" data-target-int="4" data-parent="true" class="">
<span id="title-item-ppfxvunix5djeiogwzq" class="">sub-item-02-02</span>
<!-- Button to control edit/delete li element -->
<div class="button btn-modify-row" onclick="modifyLi('ppfxvunix5djeiogwzq')">
<i class="fas fa-pencil-alt"></i>
</div>
<div class="button btn-delete-row" onclick="removeLi('ppfxvunix5djeiogwzq')">
<i class="far fa-trash-alt"></i>
</div>
<!-- Button to control edit/delete li element -->
<ol>
<li id="p6sd5w6sedjeioh1af" data-url="www.domain.com" data-target="_blank" data-target-int="3" data-parent="false" class="">
<span id="title-item-p6sd5w6sedjeioh1af" class="myClassUrl">sub-sub-item-02-02</span>
<!-- Button to control edit/delete li element -->
<div class="button btn-modify-row" onclick="modifyLi('p6sd5w6sedjeioh1af')">
<i class="fas fa-pencil-alt"></i>
</div>
<div class="button btn-delete-row" onclick="removeLi('p6sd5w6sedjeioh1af')">
<i class="far fa-trash-alt"></i>
</div>
<!-- Button to control edit/delete li element -->
</li>
</ol>
</li>
</ol>
</li>
</ol>
我必须将结构推断如下(**):
<ol id="MyMenu">
<li><span>item 01</span>
<ol>
<li>
<a href = "www.domain.com" target = "_blank">sub-Item-01</a>
</li>
</ol>
</li>
<li>
<a href = "www.domain.com" target = "_blank">item-02</a>
<ol>
<li>
<a href = "www.domain.com" target = "_self">sub-item-02-01</a>
</li>
<li>
<a href = "www.domain.com" target = "_top">sub-item-02-02</a>
<ol>
<li>
<a href = "www.domain.com" target = "_blank">sub-sub-item-02-02</a>
</li>
</ol>
</li>
</ol>
</li>
</ol>
我的实时编辑是这样的:
我可以从源 (*) 中提取结果 (**) 吗?
我没有太多经验,我正在学习。我尝试编写js函数来提取代码,但我遇到了很多困难
function PurifierMyStructure(IdObject) {
$("#"+IdObject+" ul > li").each(function() {
console.log(this.id in data);
if($('#'+IdObject).attr('data-url') != "") {
// is a link
} else {
// is a simple span
}
});
$("div").remove();
}
【问题讨论】:
-
所以你想删除 span 和 div?
-
准确。我应该用标签 a (href = data-url and target = data-target) 替换跨度并删除 div 元素
-
好的。到目前为止,您尝试了什么,发生了什么?
-
我可以编写可能的函数来提取我的代码但不起作用。函数是这个 function PurifierMyStructure(IdObject) { $("#"+IdObject+" ul > li").each(function() { console.log(this.id in data); if($('#'+IdObject ).attr('data-url') != "") { // 是一个链接 } else { // 是一个简单的 span } });
-
将您的代码添加到问题中,以便人们可以帮助解决它:)
标签: javascript jquery css html each