2012-07-24 114 views
1

我想将HTML页面加载到我的应用程序中。我只想显示HTML页面的内容。 请帮助我一个JavaScript函数,我可以遍历所有的p标签,并获取<p>标签的内容以TextView作为字符串显示。如何在html页面中获取所有p和h标签的值,但不包括所有其他标签

<html><body>" + 
     "<h1>First</h1><p>text text text</p>" + 
     "<h1>Second</h1>more text" + 
     <p>text text text</p> 
      <p>text text text</p> 
      <p>text text text</p> 
     "</body></html> 
+0

只要记住,如果你试图让你的解决方案成为通用的问题:不是每个人都用'p'标签来限制他们所有的文本。 – rfinz 2012-07-24 07:00:59

回答

5

如果你不想使用jQuery只是做:

var paragraphs = document.getElementsByTagName("p"); 
for(var i = 0; i < paragraphs.length; i++) 
{ 
    alert(paragraphs[i].innerHTML); 
} 
+0

谢谢,但它给了我所有的内部标签,如id和类似的东西如何摆脱 – cavallo 2012-07-24 08:57:45

+0

内的内部标签在IE中也有一个.innerText,但这在FireFox中不起作用。 jQuery通过提供.text()函数解决了这个问题。你将不得不做一些跨浏览器脚本。但网上有很多样本。 – 2012-07-24 10:31:10

1

这里有一行jQuery脚本会做。 $("body p").text()

如果你想每<p>线就搞定了,你也可以做这样的

$("body").children("p").each(function(e,v){ 
    alert($(v).text()); 
});​ 
2

对于相隔看选择器,你可以用逗号在jQuery中编写它们

$("p, :header").each(function(index, element){ 
    console.info($(element).html()); 
}) 
相关问题