Php 第'段的Dom元素;s文本
我正在做一个网页刮板,这让我发疯 我需要一段文字。简单,对吧?!这是密码Php 第'段的Dom元素;s文本,php,Php,我正在做一个网页刮板,这让我发疯 我需要一段文字。简单,对吧?!这是密码 $xpath = new DOMXPath($dom); $hrefs = $xpath->evaluate("/html/body//div"); for ($i = 0; $i < $hrefs->length; $i++) { $href = $hrefs->item($i); $url = $href->getAttribute('class'); echo "<br /
$xpath = new DOMXPath($dom);
$hrefs = $xpath->evaluate("/html/body//div");
for ($i = 0; $i < $hrefs->length; $i++) {
$href = $hrefs->item($i);
$url = $href->getAttribute('class');
echo "<br />Found it: $url";
}
你真正想要的是getElementsByName,一旦你有了这个节点,你就可以通过文本内容获得胜利。谢谢大家!不确定它是否适用于其他所有人的情况,但它确实适用于我的情况=o使用getElementsByTagName检索所有
-元素。然后迭代生成的DOMNodeList,获取项的nodeValue
<?php
$dom=new DOMDocument;
$dom->loadXML('<html><body><p>para1<p>para2<p>para3</p></p></p></body></html>');
$paras=$dom->getElementsByTagName('p');
for($p=0;$p<$paras->length;++$p)
{
echo htmlentities($paras->item($p)->nodeValue).'<hr/>';
}
?>
使用getElementsByTagName检索所有
-元素。然后迭代生成的DOMNodeList,获取项的nodeValue
<?php
$dom=new DOMDocument;
$dom->loadXML('<html><body><p>para1<p>para2<p>para3</p></p></p></body></html>');
$paras=$dom->getElementsByTagName('p');
for($p=0;$p<$paras->length;++$p)
{
echo htmlentities($paras->item($p)->nodeValue).'<hr/>';
}
?>
这个jQuery代码片段可能会有所帮助。单击textarea,它将找到p元素中的所有内容 并将它们加载到文本区域。 /**开始**/ $(文档).ready(函数(){
/**结束**/这个jQuery代码片段可能会有所帮助。单击textarea,它将找到p元素中的所有内容 并将它们加载到文本区域。 /**开始**/ $(文档).ready(函数(){
/**结束**/这不是用jquery标记的这不是用jQueryWell标记的你肯定为我指明了正确的方向!非常感谢!我现在更新了示例。你肯定为我指明了正确的方向!非常感谢!我现在更新了示例。
$('textarea').click(function(){
var pText = $('p').text();
if($('p').children('a, span, li'))
{
var aText = $('a').text();
var spanText=$('span').text();
var liText= $('li').text();
}
//alert('the value p is ' + pText +''+ spanText+''+liText);
$(this).text(pText+''+ spanText+''+liText);
});
});