提取<span>类</span>中的文本

时间:2014-01-31 11:18:20

标签: javascript dom

我有以下javascript代码,旨在从网页中提取某些文字。

document.getElementById('availability').innerHTML

问题是它也提取了span代码。这是我得到的输出

<span class="a-size-medium a-color-success">

        Only 14 left in stock.




</span>

然而,我真正想要提取的是

Only 14 left in stock.

这是我试图提取数据的网页的部分源代码。

<div id="availability" class="a-section a-spacing-none">   
<span class="a-size-medium a-color-success">       
        Only 14 left in stock.        
</span></div>

我知道我可以操纵提取的数据来获得我想要的结果。但是,我想知道是否有任何方式通过JavaScript代码我可以实现这一点?在此先感谢您的任何帮助

4 个答案:

答案 0 :(得分:4)

假设<span>是空<div>的唯一孩子:

var el = document.getElementById('availability');
var text = el.innerText || el.textContent;

答案 1 :(得分:1)

你应该在这个时代使用Jquery。 但是你仍然可以使用innerHTML属性。

document.getElementById('availability').innerText

答案 2 :(得分:0)

我认为这里最好的想法是使用jQuery。

$('#availability').text().trim();

如果您确实需要使用纯JavaScript,那么您需要使用大多数浏览器:

document.getElementById('availability').innerText

和Firefox:

document.getElementById('availability').textContent

答案 3 :(得分:-2)

假设它是:

的第一个孩子
document.getElementById('availability').firstChild().innerHTML();

请参阅jsfiddle