我试图使用1选择器和text()方法获取元素数据的一部分。 假设我有以下HTML代码:
<div class="price">
<span class='old_price'>1150</span><br />
920
</div>
在这种情况下,我只想获得920
(没有t 1150
)。是否可以使用一个选择器来做到这一点?
例如,如果我div.price.text()
,我会得到两个价格。所以通过&#34;一行&#34;我的意思是div.price.not("span.old_price").text()
或类似的东西。
答案 0 :(得分:0)
来自jQuery API文档Description: Get the combined text contents of each element in the set of matched elements, including their descendants.
,所以即使你只选择外部元素,你也会使用text()获得两个数字作为结果的一部分;
所以你想要的是过滤除文本节点之外的所有东西
$(".price").contents().filter(
function() {
return this.nodeType === 3; // text node
}
).text();
您可能希望修剪空格(在这种情况下,您可以使用$.trim()