左20%・右80%と言うようにフレームを切ってあります。

左のフレームにボタンがありまして、それを押すとJavaScript
が動き出し、右のフレームにあるテキストのValueに「AAA」と
入れ込みたいんです。

ブランクが空いてしまったため、やり方を忘れてしまったようです。
一応下記のやり方でよかったような気がしたんですが、でも出来な
いので当然間違っています。

function Text(){
parent.main.window.document.Myform.txt1.value = "AAA";
}

お手数ですがよろしくお願いします。

A 回答 (2件)

 サンプルを作ってみました。

次の三つの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>
--------------------------------
    • good
    • 0
この回答へのお礼

ご丁寧にありがとうございます。

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

お礼日時:2001/03/29 09:28

>parent.main.window.document.Myform.txt1.value = "AAA";



ここに出てくる"main"は対象フレームの名前ですよね?
だとしたら次のようにすれば良いと思います(確認はしてません)。

window.parent.main.document.Myform.txt1.value = "AAA";

windowはparentよりも上位のオブジェクトなので、頭に書く必要が
あります。ちなみにwindowは省略できます。
    • good
    • 0
この回答へのお礼

どうもありがとうございます。

>windowはparentよりも上位のオブジェクトなので
言われてみればそうでしたね。ブランクと言うのは恐ろしいですね。
そんな初歩的なことまで忘れてしまうのですから・・・

頭をもう一度昔に戻す良いきっかけになりました。
ありがとうございました。

お礼日時:2001/03/29 09:31

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング

おすすめ情報