ホームページ  >  記事  >  ウェブフロントエンド  >  親ウィンドウに子ウィンドウの制御方法を教えてください_html/css_WEB-ITnose

親ウィンドウに子ウィンドウの制御方法を教えてください_html/css_WEB-ITnose

WBOY
WBOYオリジナル
2016-06-24 12:01:421376ブラウズ

a.html を開いた後、b にあるテキスト ボックスを変更したいのですが、どうすればよいでしょうか。 ?
これを試しましたが、うまくいきませんでした:
function openhtml(){
var childwin = window.open("b.html");

childwin.document.getElementById("textbox"); value=" abcde";
}

bpage


ディスカッションに返信

私も学びませんヒーローの登場です

var obj =parent.frames["frameName"].window;

子ウィンドウのオブジェクトを取得します

obj.document.getElementById('clientID')
子のオブジェクトのドキュメントノードを取得しますウィンドウ

あなたは投稿者です もう一度試してみてください~~ 見てください

実装することはできません。アドレス バー (または Cookie) パラメータを渡して、パラメータに従ってページ b にそれを独自に処理させることしかできません

代替実装:
方法 1:
ページ a のクリック イベントでサーバーにセッションを書き込みます (または静的変数、同じこと)
ページ b で、タイマーを使用してサーバーにセッション (または静的変数) を定期的にクエリします。変更が見つかったら、その値に応じてページを変更します。
このメソッドは、前述の機能を実現できます。
方法 2:
1 と似ていますが、値はクライアントに書き込まれます。 Cookie を使用し、B ページは定期的に Cookie をクエリします。ある程度の遅延もありますが、通信プロセスがないため、はるかに優れています

Web プログラムにはそのような必要がないため、この機能はお勧めできません。 Web プログラムの実行プロセスであるページ プロセスを詳しく理解してください:



は実装できず、ページ b にパラメータを渡すことによってのみ実現できます。パラメーターに従って単独で処理します

代替実装:

方法 1:

ページ a のクリック イベントでサーバーにセッション (または静的変数、同じもの) を書き込みます
ページ b でタイマーを使用して、サーバーは定期的にセッション (または静的変数) に変更を加え、値に応じてページを変更します
このメソッドは、一定の遅延はありますが、前述の機能を実現できます

メソッド 2:
1 と似ていますが、クライアント Cookie の値を変更するため、B ページでの Cookie の定期的なクエリには一定の遅延がありますが、通信プロセスがなければはるかに改善されます

そのような必要はないため、この機能はお勧めできませんWeb プログラムの場合、Web プログラムであるページのプロセスを詳しく理解してください。
リクエスト - レスポンス
クロスドメイン以外の状況で、参照関係がある場合、私は以前誤解していました。問題は、操作の実行時に b ページがロードされていないことです。そのため、操作は無効であり、異常になります。次のように記述してください:
function openhtml(){
var childwin = window .open("b.html");

childwin.onload=function(){
childwin .document.getElementById(" textbox").value="abcde";
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。