• ベストアンサー

右フレームのテキストに、値を入れ込む

左20%・右80%と言うようにフレームを切ってあります。 左のフレームにボタンがありまして、それを押すとJavaScript が動き出し、右のフレームにあるテキストのValueに「AAA」と 入れ込みたいんです。 ブランクが空いてしまったため、やり方を忘れてしまったようです。 一応下記のやり方でよかったような気がしたんですが、でも出来な いので当然間違っています。 function Text(){ parent.main.window.document.Myform.txt1.value = "AAA"; } お手数ですがよろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#30871
noname#30871
回答No.1

 サンプルを作ってみました。次の三つのHTMLから成ります。 ・index.html ・left.html ・right.html  IE5.5とNetscape4.75で確認しました。お試しください。 ---------- index.html ---------- <HTML> <HEAD></HEAD> <FRAMESET cols="20%,80%"> <FRAME src="left.html" name="leftFrame"> <FRAME src="right.html" name="rightFrame"> </FRAMESET> </HTML> -------------------------------- ---------- left.html ----------- <HTML> <HEAD> <TITLE>左フレーム</TITLE> <SCRIPT language="JavaScript"> <!-- function Text() { parent.rightFrame.document.Myform.txt1.value = "AAA"; } // --> </SCRIPT> </HEAD> <BODY> <FORM name="dummy"> <INPUT type="button" value="押してね♪" onClick="Text()"> </FORM> </BODY> </HTML> -------------------------------- ---------- right.html ---------- <HTML> <HEAD> <TITLE>右フレーム</TITLE> </HEAD> <BODY> <FORM name="Myform"> <INPUT type="text" name="txt1"> </BODY> </HTML> --------------------------------

sr20detk
質問者

お礼

ご丁寧にありがとうございます。 ある所でミスをしていたせいでダメだったみたいです。 ですが、ミスを見つけるいいきっかけを作って頂いて 助かりました。

その他の回答 (1)

  • b-takeda
  • ベストアンサー率33% (7/21)
回答No.2

>parent.main.window.document.Myform.txt1.value = "AAA"; ここに出てくる"main"は対象フレームの名前ですよね? だとしたら次のようにすれば良いと思います(確認はしてません)。 window.parent.main.document.Myform.txt1.value = "AAA"; windowはparentよりも上位のオブジェクトなので、頭に書く必要が あります。ちなみにwindowは省略できます。

sr20detk
質問者

お礼

どうもありがとうございます。 >windowはparentよりも上位のオブジェクトなので 言われてみればそうでしたね。ブランクと言うのは恐ろしいですね。 そんな初歩的なことまで忘れてしまうのですから・・・ 頭をもう一度昔に戻す良いきっかけになりました。 ありがとうございました。