获取课程的所有段落

时间:2016-12-08 11:50:58

标签: javascript html class paragraph getelementsbytagname

我试图回应特定类的所有段落。源代码具有以下结构:

<div class='example'> 
  <p> this is the first paragraph </p> 
  <p> this is the second paragraph </p>
</div> 

我尝试了不同的方法(getElementsByTagName和类似的东西,但他们没有工作)。你能给我一些建议吗?

5 个答案:

答案 0 :(得分:1)

只需按类名获取值。

使用Js函数getElementsByClassName

尝试下面的Javascript代码:

var x = document.getElementsByClassName("example").innerHtml;
console.log(x);
alert(x);

还使用javascript工作jsfiddle - https://jsfiddle.net/ayh0gk7s/1/

如果您更喜欢使用jQuery,请尝试以下代码:

$('.example p')

jquery的jsfiddle链接 - https://jsfiddle.net/3nhb1agu/

答案 1 :(得分:0)

使用jQuery

$('.example p')

这应该有希望得到你想要的段落。

答案 2 :(得分:0)

通过XPath获取它们:

$doc = new DOMDocument;
$doc->load('file.html');
$xp = new DOMXPath($doc);
$pars = $xp->query('//div[contains(@class, "example")]/p');
// For exactly one class:
//$pars = $xp->query('//div[@class = "example"]/p');

foreach ($pars as $p) {
  var_dump($p->nodeValue);
}

代码获取段落节点的文本表示。

答案 3 :(得分:0)

在JQuery中,您可以打印父子元素。试试这个!

$(document).ready(function(){ $("div.example").children("p").each(function(){ alert($(this).text()); console.log($(this).text()); }); });

答案 4 :(得分:0)

您可以使用querySelectorAll

var myParagraphs = document.querySelectorAll('.example p');

for (var i = 0 ; i < myParagraphs.length ; i++) {
  console.log(myParagraphs[i]);
}