• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Googleの検索窓をFlashオブジェクト内に設置したい)

Flashオブジェクト内にGoogleの検索窓を設置したい

このQ&Aのポイント
  • 55歳の初心者がFlashオブジェクト内にGoogleの検索窓を設置したいが、苦戦している。
  • 検索窓を作成し、検索ボタンにアクションを記述したが、検索が機能しない。
  • どのようにすれば検索が機能するか教授してほしい。

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

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

例えば, Google で「教えて」を検索したとします。 すると,URL欄は次のようになります。   ↓↓↓ http://www.google.co.jp/search?hl=ja&q=%E6%95%99%E3%81%88%E3%81%A6&lr= (※自動リンクがかからないように頭の h と w を全角にしてます) (実際は http://www.google.co.jp/search?hl=ja&q=%E6%95%99%E3%81%88%E3%81%A6&lr= ) 最後の,&lr= は消しても大丈夫そうです。 だから, http://www.google.co.jp/search?hl=ja&q=%E6%95%99%E3%81%88%E3%81%A6 でも良いわけです。 というわけで, > 1. テキスト入力フィールドを作り、インスタンス名 q_txt > 2. searchボタンを作り、インスタンス名 send_btn この q_txt と send_btn が _root なら _root で同じ階層にあり, なおかつ, send_btn がボタンシンボルのインスタンスであったとしたら, その send_btn に書くスクリプトは, ------------------------------------- on (release) { getURL("http://www.google.co.jp/search?hl=ja&q="+q_txt.text, "_blank"); } ------------------------------------- (※自動リンクがかからないように頭の h と w を全角にしてます) となります。 だいたいはコレで行けると思うのですが, (実際にアップしてみて「検索できない」という報告は受けていません) 2バイト文字は URL エンコードした方が良いです。 というわけで, q_txt.text をエスケープします。 ------------------------------------- on (release) { var ques = escape(q_txt.text); getURL("http://www.google.co.jp/search?hl=ja&q="+ques, "_blank"); } ------------------------------------- (※自動リンクがかからないように頭の h と w を全角にしてます) これ↑で,行けると思います。 試しに q_txt に「教えて」を入力し,ボタンをクリックすると, http://www.google.co.jp/search?hl=ja&q=%E6%95%99%E3%81%88%E3%81%A6 に行けるはずです。 もしくは,GETで変数を渡す場合は, エスケープする必要はなく, こうなります↓。 ------------------------------------- on (release) { var q = q_txt.text; getURL("http://www.google.co.jp/search?hl=ja", "_blank", "GET"); } ------------------------------------- (※自動リンクがかからないように頭の h と w を全角にしてます) HTML から検索する場合は, そのページで使用されている文字コードの種類やいろいろな都合で, 変な変数を送らなければなりませんが, デフォルトでは必要ないので,上記で行けると思いますよ。

SEA222
質問者

お礼

sassakun様 とても明快なご説明、ありがとうございました。 おかげさまで目的を達成することができました。 >GETで変数を渡す場合は, >エスケープする必要はなく, >HTML から検索する場合は, >そのページで使用されている文字コードの種類やいろいろな都合で, >変な変数を送らなければなりませんが, >デフォルトでは必要ないので など、勉強になりました。 感謝いたしております!