在我的页面上我有这样的
HTML:
hi<br>bye<br>sigh<br>hello <em>tie</em><br>lie
使用jquery,我怎样才能将它转换为这样的html(基本上使用p而不是br):
<p>hi</p><p>bye</p><p>sigh</p><p>hello <em>tie</em></p><p>lie</p>
我第一次尝试这样做的代码是:
$(container).contents().filter(function() {
var val = this.nodeValue;
return this.nodeType == TEXT_NODE && $.trim(val).length > 0;
})
.wrap('<p></p>')
.end()
.filter('br')
.remove();
除了hello和< em> tie< / em>之外,这大部分都有效.不会在同一个p元素中.
有谁知道我怎么能做到这一点?
最佳答案 简单的JavaScript解决方案
var obj = document.getElementById('container'), str = obj.innerHTML, ar = str.split('<br />'), result = ""; for(var i = 0; i < ar.length; i++) { result += '<p>' + ar[i] + '</p>'; } obj.innerHTML = result;
我不知道如何用jQuery做这个…