HTML 这样
<div>
<span> thanks </span>
a lot
</div>
但是通过 $("div").text();
结果把 span 标签里的内容也输出了
如何只获取 a lot?
1
wellsc 2016 年 3 月 18 日 via Android
看 api 文档去吧。
|
2
yangg 2016 年 3 月 18 日 via iPhone 非 IE 可以$(div)[0].childNodes[1].nodeValue IE 要清空文本节点
|
3
icebitch OP @yangg 谢谢!!! 我就在 Firefox 下写个小脚本..组合替换下标题
请问这方面的内容要搜什么看呢 , 我看的 W3 教程 , 没有提到这种用法的~ 搜索也搜索不来 , 嵌套标签什么的都搜不到可以参考的内容!!! |
4
Lpl 2016 年 3 月 18 日
var $temp = $("div span");
$temp.remove(); console.log($("div").text()); $("div").prepend($temp); 大概就这个吧,思路是:先把 span 标签删除,然后获取 div 的内容,然后恢复 span 标签就可以了。由于操作很快,基本不会元素删除恢复的视觉效果。 建议尽量一个萝卜一个坑,一个值域一个标签 |
5
Kokororin 2016 年 3 月 18 日
var clone = $('div').clone();
clone.children().remove(); console.log(clone.text()); |
6
chairuosen 2016 年 3 月 18 日
换一种思路 $('div').clone().children().remove().end().text()
|
7
coolzjy 2016 年 3 月 18 日
遍历下 childNode 取 nodeType 为 3 的即可吧
|
8
MOxFIVE 2016 年 3 月 19 日
$("div").contents().not($("div").children()).text();
$("div").contents().filter(function(){return this.nodeType == 3;}).text(); http://codepen.io/MOxFIVE/pen/rejRZr?editors=1010 |