问问题
107 次
2 回答
3
使用 jQuery 非常简单:
$('div#data-table_paginate a').wrap('<li>');
注意到你<span>
在你中间,那么你需要使用.children()
没有选择器的。
如果你想用下面的纯 javascript 来做这件事,这是一个适用于 1 级孩子的工作解决方案,它是可重构的。
var nodes = document.querySelector('#data-table_paginate');
var newHTML = "<ul>";
for(var i = 0; i < nodes.children.length; i++) {
if(nodes.children[i].children.length > 0) {
for(var j = 0; j < nodes.children[i].children.length; j++) {
newHTML += "<li>"+ nodes.children[i].children[j].innerHTML +"</li>";
}
} else {
newHTML+="<li>"+nodes.children[i].innerHTML+"</li>";
}
}
newHTML += "</ul>";
nodes.innerHTML = newHTML;
在这里做了一个小提琴
我已经更新了我的解决方案以适合您的规格。注意:使用 jQuery 会阻碍很多你需要的嵌套代码。
于 2013-06-10T19:40:12.160 回答
1
您可以使用包装功能:
$(function() {
$('#data-table_paginate a').wrap('li');
});
这将找到data-table_paginate
div 中的所有锚点并将它们包装在一个li
元素中。
于 2013-06-10T19:39:43.303 回答