我有办法将此div中的文本换行到<p></p>
吗?
<div class="remove">
<h2 class="MsgHead">Messages</h2>
<img height="16" width="16" src="img.jpg"/>
Error saving details
<img height="16" width="16" src="img.jpg" alt="information"/>
Please check your entries and try again
</div>
我的意思是那些在任何标签之外的句子(内部删除)
答案 0 :(得分:3)
假设你希望最终得到
<div class="remove">
<h2 class="MsgHead">Messages</h2>
<img height="16" width="16" src="img.jpg"/>
<p>Error saving details</p>
<img height="16" width="16" src="img.jpg" alt="information"/>
<p>Please check your entries and try again</p>
</div>
并借用How do I select text nodes with jQuery?
中的一些代码我想出了这个。 (我没有测试过,但是,即使它不起作用,希望你能得到一般的想法。)
$('div.remove')
.contents()
.filter(function() {
return this.nodeType == Node.TEXT_NODE;
}).wrap('<p/>');
答案 1 :(得分:0)
$('<p></p>').html($('div.remove').html())
答案 2 :(得分:0)
不是你当前使用的标记,我的意思是理论上你可以,但你似乎想要包装的标记由标题元素组成,你不能放置块元素(哪个标题是内部段落元素。 (我假设你想要<p>
内的<div>
标签,如果你真的想将<div>
本身包裹在<p>
中那么实际上会在IE中引发错误)。