如何在javascript中替换html标签列表
var value1 = " <ul>
<li>Text1</li>
<li>Text1</li>
</ul> "
到
value1 = " <br/> text1 <br/> text2 "
用REGEX REPLACE做什么?
更新:
我尝试这种方法,但脚本太长了。
value1 = value1.replace(/<li>/g, "<p>");
value1 = value1.replace(/<\/li>/g, "</p>");
value1 = value1.replace(/<\/ul>/g, "</p>");
value1= value1.replace(/<ul>/g, "<p>");
value1 = value1.replace(/<\/ol>/g, "</p>");
value1 = value1.replace(/<ol>/g, "<p>");
答案 0 :(得分:1)
尝试如下......可能会帮助你...
小提琴1:http://jsfiddle.net/RYh7U/105/
小提琴2:http://jsfiddle.net/RYh7U/107/
var regex = /(<([^>]+)>)/ig;
var result = value1.replace(/<li>/ig," ").replace(regex, "").replace(/ +/g,"<br/>");
alert(result);
答案 1 :(得分:0)
这样的事情可以完成你要求的工作:
value1.replace(/<li>/ig, '<br>').replace(/<\/li>/ig, '').replace(/<\/?ul>/ig, '')
但我建议在数组中获取元素并正确返回。
答案 2 :(得分:0)
var $els = $(value1);
$("<li>", $els).unWrap().replaceWith(function() { return "<br/>"+$(this).text(); });