我需要获取在QWebView上弹出的元素,但我检索元素的常规方法不适用于此。
HTML看起来像这样(我从Web Inspector得到了这个):
<tr class="normal">
<td>
<a href="javascript:doSOmething(123, lnkCode)">123</a>
</td>
</tr>
我尝试提取这样的地方:
QWebElement doc = webControl.page()->mainFrame()->documentElement();
QWebElementCollection ahrefs = doc.findAll("tr[class='normal'] a[href*=lnkCode]");
webControl属于QWebView
类型。正如我所提到的,这个HTML是在弹出窗口中,所以我也尝试过:
QWebElementCollection ahrefs = webControl.page()->mainFrame()->findAllElements("tr[class='normal'] a[href*=lnkCode]");
但是没有返回结果。
您可以尝试递归搜索所有child frames。据推测,弹出窗口有自己的文档,因此有自己的框架。