ReportViewer 2008 Web 控件发出令人讨厌的 HTML DOM 结构。我试图深入到 HTML 中的某个元素,目前只能让我的 jQuery 选择器在 IE 中工作。我希望有人可以帮助我完成最后一部分!
我们正在谈论的 HTML 看起来像这样(例如简化):
<div id="uxReportViewer">
<iframe id="ReportFrame_uxReportViewer">
<html>
<frameset id="frameset">
<frame name="docmap" id="docmap" />
<frame name="report" id="report">
<html>
<body class="r0">
<div id="oReportDiv">
<table>
<tbody>
<tr>
<td id="oReportCell" /> <!-- Goal -->
</tr>
</tbody>
</table>
</div>
</body>
</html>
</frame>
</frameset>
</html>
</iframe>
<iframe id="PrintFrame_uxReportViewer" />
</div>
这<td id="oReportCell" />
是我需要抓住的元素。
这目前在 IE 中有效:
$('div#oReportDiv > table > tbody > tr > td#oReportCell',
$('#uxReportViewer > iframe:eq(0)')
.contents()
.find('html')[0]
.document
.frames["report"]
.document
);
但在 FF 中,我只能做到这一点,甚至不能进入我指定的范围:
$('#uxReportViewer > iframe:eq(0)')
.contents()
.find('html')[0] // good through here
.document; // document is not defined
而不是.document
在 FF 中,有一个ownerDocument
和一个parentNode
属性是 HTMLDocument 类型,但是我在文档中找不到框架。
有任何想法吗?
谢谢!