我需要删除嵌套的<b></b>
标记。查看生成的css,您将了解问题:
<div class="highlight" contenteditable="true">
ahuasdhuasdhuasdhu
<b>
<b>#</b>
huadshuashud
</b>
</div>
我想删除标有'#inside的标签,但我不想删除'#'。 (注意,hashtag可以是任何其他值)。为此,我写了以下代码:
// Highlight already been declared and just is a simple $('.highlight').
highlight.children('b').children('b').contents().unwrap();
现在我有以下代码:
<div class="highlight" contenteditable="true">
ahuasdhuasdhuasdhu
<b>
"#"
"huadshuashud"
</b>
</div>
我想加入这两个字符串,因为当我双击它时,它只选择“#”或“huadshuashud”,但我希望选择标签内的所有内容。
有一些方法可以改进我的方法或连接这两个字符串吗?
答案 0 :(得分:1)
尝试:
$('.highlight > b').html(function(){
return $(this).text();
});
哪个会给你这个:
<b>
#
huadshuashud
</b>
答案 1 :(得分:1)
Selecting text in an element (akin to highlighting with your mouse)
这里有一个就绪功能。编辑开头以便能够传递对象而不是id并添加处理程序:
$(".highlight").ondblclick(function(){
SelectText(this)
})
function SelectText(elementObject) {
// here choose function you like and replace text variable
text = elementObject;
...