Javascript 用jquery替换html标记
我想用Javascript 用jquery替换html标记,javascript,jquery,Javascript,Jquery,我想用ul(无序列表)替换所有ol(有序列表)标记。它是有效的,但是当它确实交换时,就会编写一个新的东西,并且假设您想添加到列表中,它就不会了。因此,我认为代码有问题 $(document).ready(function() { $('ol').replaceWith( "<ul>" + $('ol').html() + "</ul>" ); }); $(文档).ready(函数(){ $('ol')。替换为(“”+$('ol').html()+””; });
ul
(无序列表)替换所有ol
(有序列表)标记。它是有效的,但是当它确实交换时,就会编写一个新的东西,并且假设您想添加到列表中,它就不会了。因此,我认为代码有问题
$(document).ready(function() {
$('ol').replaceWith( "<ul>" + $('ol').html() + "</ul>" );
});
$(文档).ready(函数(){
$('ol')。替换为(“”+$('ol').html()+”
”;
});
从本质上讲,它是有效的,但这一行不允许我添加新的列表对象。这很简单,而且您甚至不必使用jQuery
var ol = document.querySelector('ol');
ol.outerHTML = ol.outerHTML.replace(/ol/, 'ul');
如果要用ul
替换每个ol
标记,则需要使用queryselectoral()
并运行循环。例如:
var ol = document.querySelectorAll('ol');
for(var i = 0; i < ol.length; i++) {
ol[i].outerHTML = ol[i].outerHTML.replace(/ol/, 'ul');
}
var ol=document.queryselectoral('ol');
对于(变量i=0;i
,
$。每个($('ol'),函数(ind){
$(this.replace为(“”+$(this.html()+”
”);
});代码>
一,
二,
首先
第二
对已在DOM中创建的元素执行的替换操作。如果将新元素添加为无序列表,则它将以无序列表的形式出现。因此,每次添加新元素时,必须调用replace方法以替换为有序列表再现您的问题的代码?您想用ul
替换每个ol
标记,还是只替换一个特定标记?您需要querySelectorAll
来替换所有标记them@quirimmo是的,但是op没有提到所有的人。反正我会更新的