ツリーナビゲーションiframeを、そのツリーを含むHTMLページ内から、コンテンツ領域iframe内からリロードするにはどうすればよいですか?ツリーナビゲーションiframeをコンテナページとコンテンツiframeからリロードする
ツリーナビゲーションのiframeは、このようなFavorites.php(HTMLページ)で定義されています。
<iframe id="tnav" src="loadtreeb.php" style="border: 0px; width: 200px; height: 86%; overflow: auto;">
</iframe>
ノードがツリーに追加されている場合は、HTMLページにsavepages.phpを呼び出して更新を保存するボタンがあります。そのPHPファイルはコンテンツiframeに読み込まれます。
<FORM name="pagesform" action="savepages.php" method="post">
<P style="font:12px Arial, Verdana;" >
Add one line for each page in this format: Page Name, Folder Name, http://thepage.com <br/>
<textarea name="newpages" rows="23" style="width:780px;"></textarea> <br/>
<input type="submit" value="Save Page(s)" style="margin-top: 5px;"/>
</P>
</FORM>
このようにsavepages.php(コンテンツiframe)内からツリーをリロードします。
<script type="text/javascript">
$(document).ready(function() {
$('#tnav', window.parent.document).attr('src','loadtreeb.php');
});
</script>
他のアクションがHTMLページから実行され、JavaScriptもiframeをリロードします。ここでは、ページスクリプトで定義されたjavascript関数を呼び出すアイテムの削除ボタンがあります。
<div id="update">
<img src="treeico/delete.gif" style="cursor: pointer;" title="Delete" onclick="deleteitem();" />
</div>
function deleteitem()
{
//perform delete action
//reload tree
$('#tnav').attr('src','loadtreeb.php');
}
( 'SRC'、 'loadtreeb.php').ATTRするために呼び出すツリー・ナビゲーションを再ロードし、ない
$('#tnav', window.parent.document).attr('src','loadtreeb.php')
、
なく
どちら$('#tnav').attr('src','loadtreeb.php')
。
#tnavにアクセスする際に問題が発生している必要があります。何が問題なの?私は#tnavを見つけるために場所window.parent.document
を追加することが、コンテンツエリアiframe内からツリーナビゲーションを再ロードする正しい方法であると考えました。場所を省略するのは、HTMLページスクリプト内からリロードするのが正しい方法でした。
- 他にも私が考えなかった問題はありますか?
- キャッシュに問題がありますか?
- ツリーナビゲーションiframeのキャッシュを防止するにはどうすればよいですか?
ありがとうございます。