DOMXPath->查询(???)搜索HTML文档中寻找JavaScript的每个节点

时间:2013-02-21 00:01:31

标签: php javascript html xquery domxpath

如何搜索HTML文档以在其中查找JavaScript myfunc? 也就是说,我想在HTML干草堆中找到可能包含以下节点的上述针。

  • <p onMouseOver="myfunc(a,b,c)">blah blah blah</p>
  • <a href="javascript:MyFunc(a, b, c)">blah blah blah</a>
  • <img onmouseover='myFunc(a,b, c )' src="someimage.gif">

我目前使用的PHP代码是:

foreach($domxpath->query('[onmouseover^="myfunc"]') as $node) {
    $text = $node->nodeValue;
    echo "<br>text=".$text;  // just to see what i get
}

2 个答案:

答案 0 :(得分:1)

你想要一个像//*[contains(@onmouseover, 'myfunc')]

这样的模式
  • //*选择文档中的所有元素。
  • [contains(@onmouseover, 'myfunc')]然后选择onmouseover属性包含“myfunc”的那些。

答案 1 :(得分:0)

您不仅仅是在寻找onmouseover(请查看<a>)。希望函数名称是一致的,因为PHP只是XPath 1.0

//*[@*[contains(.,"myfunc")]]

这将选择任何包含“myfunc”(区分大小写)的属性的任何节点。