2016-04-30 12 views
0

私は次のdivを含むmain.htmlとを持っている:divのinnerHTMLのオブジェクトアクセスの親HTMLのdiv

<div id="main"> 

私は動的にこのdiv要素(例えばpage1.htmlPAGE2にHTMLをロードします。 html)。 「私はdiv要素にpage2.htmlをロードする必要があり、私のpage1.html、中にボタンID =「BTN1」を持ちたい、今すぐ

document.getElementById("main").innerHTML='<object type="text/html" data="page1.html" ></object>'; 

:私は、次のコードを介してこれを達成することができますよ私の親のメイン "main.html。 しかし、page1.htmlに、私は助けを事前に

document.getElementById("main") // returns null 

感謝を「メイン」私のコンテナのdivを見つけることができませんよ!

+1

オブジェクトタグを使用せず、コンテンツをロードするためにajaxを使用し、そのコンテンツをDOMに挿入します – adeneo

答えて

0

あなたの問題は、1ページのDOMを使用して、iframeまたはobjectで読み込んだコンテンツとやりとりしようとしています。これらを使用すると、JavaScript開発者にとって非常に難しくなります。

プレーンJavaScriptのみを使用している場合は、古いメソッドを使用してこのコンテンツを継承する代わりに、DOMを介してHTMLで直接ロードするAJAXリクエストを使用することをお勧めします。

ここでは、plain-JS AJAXの初心者向けガイドです。 jQueryのようなフレームワークは、プロセスを非常に単純化します。
http://code.tutsplus.com/articles/how-to-make-ajax-requests-with-raw-javascript--net-4855

そうでなければ、クロスサイトスクリプティングのセキュリティ機能により、そのノードのコンテンツにアクセスすることはできません。

+0

ありがとう、本当に助けになりました:) –