我正在尝试从也在p标记内的span标记内抓取文本。我怎么能这样做?
示例:
<div class="wrapper">
<p> Hiking <span> 1 </span> </p>
</div>
所以应该返回的是:
1
我尝试了什么:
$(".wrapper").click(function() {
var num= $(this).html();
alert(num);
}):
答案 0 :(得分:2)
你可以这样做:
$(".wrapper").click(function() {
var num= $(this).find('span').text();
alert($.trim(num));
});
基本上你想在包装器中选择span元素的文本,所以在你的html上使用.text
和find
。执行$(this).html()
只会完全为您提供包装器html的字符串重复,而只需要有选择地选择元素的(目标)文本。
同样地,你的html就像这样,你想避免选择嵌套的span:
<div class="wrapper">
<p> Hiking <span> 1 <span> Do not select this </span></span> </p>
</div>
你可以这样做:
var num= $(this).find('>p > span')[0].firstChild.nodeValue;