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の代わりに、HTMLDocument タイプの an 属性ownerDocument
と aparentNode
属性がありますが、ドキュメント内にフレームが見つかりません。
何か案は?
ありがとう!