• ベストアンサー

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

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

関連するQ&A

  • 複数のプルダウンメニューの設置(左右フレーム)

    前回プルダウンメニューによる左右フレーム切り替えの質問をさせていただきました。 →http://oshiete1.goo.ne.jp/kotaeru.php3?q=1200405 申し訳ないですが、ここからまた新たに質問させてください。 上部(固定)、左フレーム(プルダウン設置)、右フレーム(メインページ)というページを作っています。 現在の状況はローカルのフォルダの中に ○上フレーム:flame1.htm(完成) ○左フレーム:flame2.htm(←ここに設置したい) ○右メインページ:1.htm 2.htm 3.htm(←1つ目プルダウン)4.htm 5.htm 6.htm(←2つ目のプルダウン) 7.htm 8.htm 9.htm(←3つ目のプルダウン)  と入っている感じです。 <HEAD>~<HEAD>部分 <script language="JavaScript"><!-- function myGo(){ mySelect = document.myForm.myMenu.selectedIndex; parent.main.location.href = document.myForm.myMenu.options[mySelect].value; } // --></script> <BODY>~<BODY>部分 <form name="myForm"> <select name="myMenu" onChange="myGo()"> <option value="1.htm" >第1章 <option value="2.htm" >第2章 <option value="3.htm" >第3章 </select> </form> ↑上記でひとつのプルダウンは設置できるのですが、 2つ目、3つ目のプルダウンの設置となると、 どこをどうしたらよいやらわかりません。 是非ご回答よろしくお願いいたします。

  • 外部テキストの値を得るには?

    フラッシュ初心者&質問するのが初めてなので うまく伝わるかどうか心配ですがよろしくお願いいたします。 外部テキストnum.txtにはstr=5という記述があります。 このnum.txtを取り込んで、 5という数値をflash側で変数aaaに代入しました。 --------------------------- var vars = new LoadVars(); vars.load("num.txt"); vars.onLoad = function(num){ if(num){ aaa= vars.str; trace(aaa); } } --------------------------- この場合、ちゃんと5と出力されます。 しかしこの関数内のaaaという変数を他でも利用したいのです。 (例えばvar menu_num:Number = aaa;というように) 単純に下のように記述すると --------------------------- var vars = new LoadVars(); vars.load("num.txt"); vars.onLoad = function(num){ if(num){ aaa= vars.str; } } var menu_num:Number = aaa; trace(menu_num); --------------------------- undefinedが出力されます。 この時にちゃんと5と出力させるにはどうしたらいいのでしょうか。 いろいろグローバル変数など勉強しましたがうまくいきません。 ちなみに外部テキストnum.txtのstr=5というのは、 5という数字のみでもかまいません。 とにかくテキストから数値を取り出す方法を考えています。 ご回答お願いいたします。

    • ベストアンサー
    • Flash
  • 2つ親のフレームにアクセスしたい

    window指定で困っています。 WebサイトにUPしたいWebページがフレーム転送を使っているため、 ローカルやテスト用サーバの環境とフレームツリーが変わってしまいます。 その環境でツリー最下層から2つ上のFrameのform内容を読み書きしたいのです。 できればローカルにフレーム転送環境を作りたくないのですが、 良い方法はないでしょうか。 ローカルでは top.aaa.bbb.ccc.ddd の位置から top.aaa.bbb.document.forms.elements.value ="aaa"; とアクセス可能。 しかしUP後は top.xxx.aaa.bbb.ccc.ddd の位置から top.xxx.aaa.bbb.document.forms.elements.value ="aaa"; にアクセスすることになる。 フレーム分割をまとめればよさそうですが、parentのフォームに データを保管しておいて、フレーム分割を縦横で変えたいので… parent.parent.document.forms...とやってみましたがダメでした。 なんかクイズみたいになってしまいますが、よろしくお願いします。

  • 左右のフレームを同時にスクロールする方法

    javascriptで左右のフレームを同時にスクロールする様にしたのですが右フレームの垂直スクロールを行うと、右フレームの水平スクロールが左へ戻ってしまいます。ちなみに左フレームは水平スクロールしません。 --------------------------左フレーム--------------------------- function scrPage() { parent.right.lfScr(document.body.scrollLeft,document.body.scrollTop); } function lfScr(y) { scrollTo(0,y); } &lt;BODY onScroll=&quot;scrPage()&quot;&gt; ---------------------------------------------------------------- -------------------------右フレーム----------------------------- function scrPage() { parent.left.lfScr(document.body.scrollTop); } function lfScr(y) { scrollTo(0,y); } &lt;BODY onScroll=&quot;scrPage()&quot;&gt; ----------------------------------------------------------------- どうにかして、右フレームの垂直スクロールを左に戻さない方法はないでしょうか?よろしくお願いします。

  • クリック→テキストボックスに追加

    下記は、クリックすると、テキストボックスの文字が入れ代わります。こうでなく、「どれどれそれからどうした」と追加していくようにするにはどうしたらよいでしょうか? <A HREF="javascript:function voi(){};voi()" onClick="document.myform.bun.value='どれどれ'">どれどれ</A><BR> <A HREF="javascript:function voi(){};voi()" onClick="document.myform.bun.value='それから'">それから</A><BR> <A HREF="javascript:function voi(){};voi()" onClick="document.myform.bun.value='どうした'">どうした</A><BR> <FORM name="myform"> <INPUT TYPE="TEXT" NAME="bun" SIZE="50"> </form>

  • Formの値を別のフレームで使いたい

    上下分割のフレームのうち、上のフレームの <FORM NAME="BForm"> RGB値を入れる> 1番目の色:<INPUT TYPE="text" NAME="Bpt1" VALUE="" SIZE="8"> 2番目の色:<INPUT TYPE="text" NAME="Bpt2" VALUE="" SIZE="8"> <INPUT TYPE="button" VALUE="CL" NAME="CL" onClick="CL()" tabindex="6"> </FORM> でテキストボックスに入れた数字を使って 下のフレーム(komado3)を書き変えたいのですが。 <SCRIPT LANGUAGE="JavaScript"> <!-- function CL(){ B1V=document.BForm.Bpt1.value; B2V=document.BForm.Bpt2.value; parent.komado3.document.open(); parent.komado3.document.write('<HTML><HEAD>'); parent.komado3.document.write('<STYLE TYPE="text/css">'); parent.komado3.document.write('<!--'); parent.komado3.document.write('.pt1{color:'+B1V+'}'); parent.komado3.document.write('.pt2{color:'+B2V+'}'); parent.komado3.document.write('-->'); parent.komado3.document.write('<'+'/STYLE><'+'/HEAD><BODY>'); parent.komado3.document.write('<SPAN CLASS='+pt1+'>1番目の色は'+B1V+'です<'+'/SPAN>'); parent.komado3.document.write('<SPAN CLASS='+pt2+'>2番目の色は'+B2V+'です<'+'/SPAN>'); parent.komado3.document.write('</'+'BODY><'+'/HTML>'); parent.komado3.document.close(); } //--> </SCRIPT> これだとうまく行かないのですが、どこがおかしいのか教えてください。

  • 複数のプルダウンメニューから指定フレームへ表示

    質問内容を検索してhttp://omedeta.okweb.jp/kotaeru.php3?q=1205107 から抜粋させていただきました。 funfun31様、ご回答された方々、まこと申し訳ございません。 ありがとうございます。 現状、上部(固定)、左フレーム(プルダウン設置)、 右フレーム上(表のサンプル表示)、 右フレーム下(メインページ) というページの構成でfunfun31様とほとんど同じです。 上フレーム(完成) 左フレーム(↓のJavaScriptを設置) 右フレーム上(右フレーム下へ表示する表の見方) 右フレーム下(ここにプルダウンメニューで選択した内容表示) 左フレームの内容 <HTML> <HEAD> <script kanguage=Javascript"> <!-- function myGo(myPullDown) {   var mySelect = myPullDown.selectedIndex;   parent.右フレーム下ファイル名.location.href = myPullDown.options[mySelect].value; </script> <body background="壁紙"> <form name="myForm"> 題名1<br> <select name="myMenu1" onChange="myGo(this)"> <option selected>選択 <option value="01.htm">01 <option value="02.htm">02 <option value="03.htm">03 </select> <br> 題名2<br> <select name="myMenu2" onChange="myGo(this)"> <option selected>選択 <option value="04.htm">04 <option value="05.htm">05 <option value="06.htm">06 </select> </form> </body> </html> どこが間違っているのかがわかりません。 現状選択しても右フレーム下に反応がありません。 知識不足で単純な見落とし、または根本的な間違いがあるかも知れません。 無知でまこと申し訳ございませんが 是非ご回答よろしくお願いいたします。

  • フレームのあるHPでプルダウンメニュー

    上左右とフレームの切ってあるHPをビルダーで作っている者です。 似た感じの質問を過去ログから検索して読みましたが、質問させてください。 左フレームにプルダウンメニューを設置して、 プルダウンメニューをクリックすると 右メインページが切り替えれる様にしたいのです。 http://www.red.oit-net.jp/tatsuya/java/combobo2.htm←この様なプルダウンメニューを設置したいのですが、 フレーム切り替えのタグをどこをどういじっていいのかわかりません。 現在ローカルファイルで作成中で、フォルダに 上フレーム:flame1.htm(完成) 左フレーム:flame2.htm(←ここに設置したい) メインページ:1.htm 2.htm 3.htm 4.htm  と入っている感じです。 左フレーム↓ <script language="JavaScript"><!-- function myGo(){ mySelect = document.myForm.myMenu.selectedIndex; location.href = document.myForm.myMenu.options[mySelect].value; } // --></script> <form name="myForm"> <select name="myMenu" onChange="myGo()"> <option value="1.htm" >第1章 <option value="2.htm" >第2章 <option value="3.htm" >第3章 <option value="4.htm" >第4章 </select> </form> どこをどう直したらいいのか、是非お教え下さい。 よろしくお願いします。

  • 別フレームのテキストボックスに説明表示

    フレームを使ってHPを作っていますが、 どうにもできないところがあり困っています。 左右に分割していて、 左フレーム name="menu" 右フレーム name="main" で、左フレーム内のリンクをオンマウスすることで、 右フレームのテキストボックス name="readme" に説明文を表示させたいのです。 どなたか教えていただけませんでしょうか?

    • ベストアンサー
    • HTML
  • JavaScriptでのフレーム間の値の受け渡し

    はじめまして。 JavaScriptでのフレーム間の値の受け渡しについて、お聞きしたいと思っています。 ・下記left.htmでは、リストボックスから画像名を選択します。 <script type="text/javascript"> <!-- function sample(image1){ parent.fuseaction = image1; location.href="right.htm"; var image1 image1 = image1.jpg image2 = image2.jpg } // --> </script> <body> 下記の画像を選択してください。 <p><select> <option value="0"></option> <option value="image1" selected>画像1</option> <option value="image2">画像2</option> </select></p> </p> <p><input type="button" value="ボタン" name="B3" onClick="sample(image1);"> </p> <p><a href="main.htm" target="main">sample</a> </p> <p>  </p> </body> </html> ・下記right.htmでは、画像名を表示します。 <script type="text/javascript"> <!-- function sample(image1){ } src="sample(image1)" まだ、初心者のため、みなさまに教えて頂きたいと思います。 よろしくお願いします。