我有这个HTML代码
<div id="mydiv">
<div>
<span>Text inside span</span>
Text next to span
</div>
<div>
Contents inside the 2nd div element...
</div>
</div>
我希望旁边的“文字”。我试过这段代码JQuery代码
var a = $('#mydiv div').first().find('span').parent().text();
alert(a);
上面jquery代码的输出是:
Text inside span
Text next to span
如果只获得“文字旁边的文字”,应该做什么才能做什么?
答案 0 :(得分:50)
var a = $('#mydiv div').first().contents().filter(function() {
return this.nodeType == 3;
}).text();
这将获取所选div
的内容,并过滤匹配的集合,仅返回带有nodeType == 3
的元素,这些元素是文本节点。
答案 1 :(得分:7)
使用此代码:
$('#myDiv')
.contents()
.filter(function() {
return this.nodeType == Node.TEXT_NODE;
}).text();
答案 2 :(得分:7)
我明白了:
$('#mydiv div').first().contents().eq(1).text();