清除div的文本,但使用jquery 保留子节点

可能重复:
jQuery:如何删除文本但不删除子元素

text of parent

在上面的例子中,我想只清除父divparent )的文本"text of parent" ,保持子节点( child 1child2 )不变。 我怎么能用jQuery做到这一点?

尝试

 $("#parent").contents().filter(function(){ return (this.nodeType == 3); }).remove(); 

http://jsfiddle.net/eUW47/1

不要使用jQuery:

 var div = document.getElementById("parent"); div.firstChild.data = "";​ 

见http://jsfiddle.net/Q8Bzv/

试试这个:

 var $children = $("#parent").children(); $("#parent").html("").append($children);​ 

一般“删除所有子文本节点”function(抱歉,没有jQuery):

 function removeTextNodes(el) { var nodes = el.childNodes, i = nodes.length; while (i--) if (nodes[i].nodeType == 3) el.removeChild(nodes[i]); }