• 締切済み

別のページのグローバル変数を読んだり、function Call したい

JavaScript をまだはじめたばかりで、質問として しょうもないのかも知れませんが、よろしく おねがいします。 フレームで分けた、別のページにあるグローバル変数の値を参照したり、function を呼び出したりという 芸当は可能でしょうか???

  • naru
  • お礼率76% (155/202)

みんなの回答

  • Kizz
  • ベストアンサー率47% (30/63)
回答No.1

はじめまして、naru さん。 可能ですよ。 ・別ページにある input タグのvalue ・別ページにある scriptタグ内のグローバル var 変数 など。 また、関数などの呼出も可能ですよ。 ◆サンプル #実際の書き方で説明を。  2フレーム構成のページを作成(#1)し、フレーム2(frame2.htm)側から、  フレーム1(frame1.htm)内をアクセスする  アクセス例:   A.parent.sub1.form1.value1.value でframe1のinput name=value1を参照   B.parent.sub1.dialog() でframe1のjavascript 定義関数を呼び出し     また、var ret = parent.sub1.dialog(); とすれば、dialog()がreturnした     値を受けることが可能。     ※このサンプルでは、frame1内のjavascriptグローバルvar変数値を取得   C.parent.sub1.form1.jump.click() でframe1のinput name=jumpのクリック実行 === 以下上記アクセス例用のコード ++(フレームページ)++ <frameset rows="50,*" frameborder="0" border="0" framespacing="0"> <frame name="sub1" src="frame1.htm" > <frame name="sub2" src="frame2.htm"> </frameset> ++(frame1.htm)++ <SCRIPT LANGUAGE="JavaScript"> <!-- var g_val = 0; function dialog() { alert("g_val="+g_val); return g_val; } function plus_proc() { g_val++; } // --> </SCRIPT> <form name="form1"> <input type="hidden" name="value1" value="aaaaa"> //g_val の値を変更するボタンを配置 <input type="button" name="plus" value="plus" onClick="plus_proc()"> <input type="button" name="jump" value="jump" onClick="なにか処理でも"> </form> ============================ 以上、参考までに。 がんばってみて下さい。

naru
質問者

お礼

回答ありがとうございました。 IEで確認しましたところ、確かに変数の参照、 parent.sub1.dialog(); は可能でした。 しかし・・・ネスケでやると parent.sub1.dialog(); の方がだめなようでした。 でも参考になりました。 わざわざスクリプトまで書いて示していただき、 感謝いたします。

関連するQ&A

  • 別フレームのページが読み込み完了かどうか知りたいです。

    子フレームから、別のフレームのページが完全に読み込み完了かどうかチェックする方法が知りたいです。 フレーム1 フレーム2 ここのフレームでフレーム1のフォームパラメータを参照しようとしているのですが、フレーム2が先に読み込み完了し、フレーム1が読み込み未完の場合に、オブジェクトが無いというエラーが発生します。 フレーム1が読み込み完了になるまで、フレーム2のJavascriptでは、フレーム1の値を見ないように処理したいのですが、フレーム2からフレーム1が読み込み完了か分かる手段が検討つきません。 よろしくお願いいたします。

  • html ページをそっくり → 変数 ( もしくはファイル )

    1.まず、フレームを上下に2つに分けます。 2.下のフレームに表示された任意のページを、   上のページの JavaScript で、そっくり取り込み、   それを、変数化することは技術的に可能で   しょうか。   イメージとしては、変数の中身は、たぶんこんな   感じになれば理想です。。。   page = "<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN" "HTTP://WWW.W3.ORG/TR/REC-HTML40/LOOSE.DTD"> <HTML LANG="JA"> <head><title>TEST PAGE</title>......."   

  • function内での定義

    functionの中で変数に値を入れ、function外で使用したいのですがうまくできません。 例えば var ppc = null; function OpenDetail(){ ppc = "fggr"; } document.write("////"+ppc); という場合、出力は「////null」ですが期待している結果は「////fggr」です。 javascriptは上から順番に実行する、functionはどこかからあえて呼ばなくても実行される、ローカル変数を別の場所で使うにはグローバル変数の定義が必要、を踏まえてのソースなのですが、どこが間違っているのか教えてください。

  • function内の変数について

    PHPのfunction内の変数についてご質問があります。 以下のようなスクリプトがあった場合、 fct_1(); function fct_1(){  $str = '123';  fct_3(); } function fct_2(){  global $str;  print $str; }  fct_2内の変数($str)を fct_3でも引き継ぎたいのですが、どうすれば宜しいのでしょうか。  アドバイス頂ければ幸いです。  * 見やすくする為にインデントには全角スペースを入れてあります。

    • 締切済み
    • PHP
  • ある変数の別のフォーム中での利用

    Visual Basicに関する質問です。 あるフォーム(Form1)中で変数を定義しました(Public変数として)。 このフォーム中で変数に「適当な文字」を代入します。 この文字を別のフォーム(Form2)中にあるフレーム(Frame1)のキャプション(Frame1.Caption)に表示させる(引用する)にはどうすればよいのでしょうか? 基本的な質問ですが,よろしくお願いします。

  • functionから別のfunctionを実行したい

    よろしくお願いします 今JavaScriptで function a(){ 処理A } function b(){ 処理B } function c(){ 処理C 処理Aをして終わり } と言うことをしたいのですが function a と同じコードをcに書くのが大変なので function cからaを呼び出して実行することができないかと考えています 検索も色々してみたのですが これと言った答えがなかったので質問しました よろしくお願いします。

  • function内でメンバー変数を作れる?

    ActionScriptのオブジェクトスクリプトは初めてで、ActionScript2.0で制作しようとしています。 クラス内での変数の扱い方が解らずはまっています。 class Sample{ var temp:Array = Array(); function Func_01(key, val){ this.temp[key] = val; } 上の二行目メンバー変数tempを定義する部分をFunc_01内で行うことはできないのでしょうか? やりたいことは、外部テキストファイルを読み込み、中身によって持つメンバー変数を変えたいだけです。例えば 外部テキストより sample=key_A>>>1,key_B>>>2,key_C>>>3,key_D>>>4 を読み込み sample['key_A']=1; sample['key_B']=2; sample['key_C']=3; sample['key_D']=4; のように','と'>>>'でsplit等を利用し連想配列にして利用したいのですが、function内で読み込んだ値をメンバー変数にできずはまっています。お解りの方ご教授願います。

    • ベストアンサー
    • Flash
  • javascriptからPHPに変数を渡したい

    Javascriptで制御しているクライアントのページと PHPで制御しているサーバ側のページがあります。 クライアント側のページで生成したJavascriptの変数の値を サーバ側のページに送りPHPで処理したいと考えています。 どのようにすれば変数の値を送ることが出来るでしょうか? 出来ればフォームを使わずに内部処理で行いたですが、 出来なければフォームでも構わないのです。 簡単で構わないので例文を頂けると非常に助かります。 まったくの初心者で恐縮ですが、教授よろしくお願いします。

  • 同じ名前の変数…

    数日前からPHPをはじめた者です。 クラス変数(という呼び方が適切かは??)と、その変数に値をセット/ゲットする関数を内包するクラスを作ってみたのですが、それに関してどうもピンと来ない部分があるので質問させてください。 以下がソースです。 class sample{ var $hensu; function set_hensu($str){ $hensu = $str; } function get_hensu(){ return $hensu; } } 上記クラスを使って値のセット/ゲットをしようとしたのですが、結果は×でした。 ファンクション内の変数を、thisで指定するとうまく行きました。 最初に指定した変数と、ファンクション内の変数を同一のものだと認識させるには、ファンクション内でのthis指定の他に方法は無いのでしょうか? もしくは、ファンクション内で書いた変数が新しい変数だと認識させない方法とか…。 無いなら諦めます。よろしくお願いします。 また、直接質問とは関係ないのですが、 どうしてPHPは変数名を書いただけで変数が作られてしまうのでしょう。メリットは何ですか? 分かりづらくて戸惑ってます。

    • ベストアンサー
    • PHP
  • 違うページの変数を使用する

    JavaScriptを最近独学ではじめました。 サイトを立ち上げているのですが、 Aと言うページがあります。 Aと言うページの中に、Bにつながるリンクをおいています。 そのBにつながるリンクをクリックすると、Aのページに定義されている関数、『out(data)』が読み出されます。 Bにつながるリンクには、『onClick="out(aaaaa)"』があるとします。 このBにつながるリンクをクリックすると、Aのページのdataにaaaaaが入りますよね? このaaaaaをBのページの変数textに入れたい場合は、どのようにすればいいのでしょうか。 JavaScriptにグローバル変数と言うものはあるのでしょうか。 検索をかけても、意味が良く分かりません。 すみませんが、ご教授ください。 お願いします。