複数の iframe を含むページがあります。
親
| | __ _iframe1
| | __ _iframe2
| | __ _iframe3
iframe1 には、いくつかの非表示の値を持つフォームがあります。iframe2 に (少なくとも) これらの値の 1 つが必要です
これが私のコードです
<script type="text/javascript">
alert(parent.frames[0].document.getElementById("UserID").value);
</script>
サイトが初めて読み込まれると、このページは正常に機能します。テストポップアップが表示されます。iframe1 は、iframe2 をリロードする一連のタブです。ユーザーがスクリプトを含むタブに戻ると、parent.frames[0] の null 参照が返されます。
私はこれを修正しようとして髪を引っ張っています。助けていただければ幸いです。
これを Firefox と IE で 100% 再現することができます。Chrome と Safari では、そうではありません。値が null であることが少ないというわけではありませんが、多くの場合、情報にアクセスできず、何が間違っているのかわかりません。
見やすくするために編集します。これらのフレームはすべて、同じドメイン、同じプロトコル、およびポートにあります。
一部のデータを別のサイトに渡すことができるように easyXDM の使用を実装していますが、easyXDM を含めるかどうかにかかわらず、この問題が発生します。
ありがとう!
ddr2が示唆するように、onLoadが原因のようです。これを回答として投稿した場合は、適切な回答としてフラグを立てていただければ幸いです。
私はそれを考えていなかったのでちょっとがっかりしています:(