Flashで検索窓を作るには

このQ&Aのポイント
  • Flashで検索窓を作る方法について質問しています。具体的には、テキストエリアとボタンを配置し、ボタンを押すとGoogle検索が実行されるようにしたいとのことです。
  • 試した方法として、テキストエリアとボタンを作成し、ボタンのスクリプトに「q_txt.text」を使って検索クエリを組み立て、getURL関数を使ってGoogle検索ページに遷移する方法を試しましたが、うまくいきませんでした。
  • 別の方法として、「GET」メソッドを使って検索クエリを渡す方法も試しましたが、この方法でもうまく検索結果が表示されず、代わりにGoogleのトップページが表示されてしまいました。何が問題なのか、どうすれば正しく検索窓を作ることができるのか教えてほしいとのことです。
回答を見る
  • ベストアンサー

Flashで検索窓を作るには

Flashで検索窓を作ろうとしています。 過去の質問で同様の内容があったのでそれを参考にしましたがうまくいきません。http://oshiete1.goo.ne.jp/qa2477755.html 作業は以下のようにしました。 1.Flash MXで新規ファイルを作成し、ステージ上にテキストツールでテキストエリアを作る 2.テキストエリアを選択してプロパティの「インスタンス名」にq_txtと入力 3.コンポーネントウィンドウからPushButtonをステージ上にドラッグ&ドロップ 4.3でつくったボタンを選択してプロパティの「インスタンス名」にsend_btnと入力 5.3でつくったボタンに以下のスクリプトを設定 on (release) { getURL("http://www.google.co.jp/search?hl=ja&q="+q_txt.text, "_blank"); } 6.パブリッシュして検索を実行 これで間違っていないと思うのですが、どうしても検索結果は http://www.google.co.jp/webhp?hl=ja となり、テキストエリアに入力した内容が反映されません。 過去の回答にある、別の方法も試しましたが、最後の方法 on (release) { var q = q_txt.text; getURL("http://www.google.co.jp/search?hl=ja", "_blank", "GET"); } を使うと、ボタンのサイズなど、関係ない長い値が付いて、その最後にテキストエリアに入力したものが出てくるため、検索には失敗し、結局 http://www.google.co.jp/webhp?hl=ja が表示されてしまいます。 どこが間違っているのでしょうか。 よろしくお願いします。

  • Flash
  • 回答数1
  • ありがとう数1

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

  • ベストアンサー
  • suzuki-_-
  • ベストアンサー率77% (152/195)
回答No.1

3で配置したボタンは、見かけ上・動作上もなんら普通のボタンと変わりないですが、 プロパティを見るとわかる通り(パラメータではない方のインスタンス名記入欄上) 扱いはボタンではなくムービークリップとなっています この場合、onイベントでq_txtを参照すると、 そのインスタンス内のq_txtを指すため、 階層の違いから、存在しないという結果が返り、 望むような動作をせず失敗するのだと思います なので、そのインスタンスから、1・2で作ったq_txtを参照するには、 _parent もしくは _root といった、 q_txt の階層を示す参照用パスが必要です //5 のスクリプト変更例 on (release) { getURL("http://www.google.co.jp/search?hl=ja&q=" + _parent.q_txt.text , "_blank"); }

shalapoi
質問者

お礼

回答ありがとうございます。 バッチリできました! 複数の文字コードを使うサイトのページに載せたいと思っているので、文字コードをいろいろと変えて試してみましたが、それでも2バイト文字の検索に問題はありませんでした。そのあたりはformタグを使うより簡単で良いですね。 formでテキストエリアを作った場合、IEで文字コードによってサイズが変わってしまうというバグ(?)があり、Flashでやりたかったのですが、これでうまく行きました。 ありがとうございました。

関連するQ&A

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

    55歳の初心者です。 Googleの検索窓(下記HTML)をFlashオブジェクト内に設置したく、苦戦しております。 <form method=get action="http://www.google.co.jp/search" method=get target="_blank"> <input type=text name=q size=31 maxlength=255 value=""> <input type=hidden name=ie value=Shift_JIS> <input type=hidden name=oe value=Shift_JIS> <input type=hidden name=hl value="ja"> <input type=submit name=btnG value="Google 検索"> </form> Flash 8 1. テキスト入力フィールドを作り、インスタンス名 q_txt 2. searchボタンを作り、インスタンス名 send_btn 3. ボタンに下記アクションを記述 on (release) { System.useCodepage = true; q = q_txt.text; ie = Shift_JIS; oe = Shift_JIS; hl = "ja"; this._parent.getURL("http://www.google.co.jp/search", "_blank", "get"); } パブリッシュ後、サーバーにアップ。 ページを表示させ、テキストフィールドにテキストを入力、searchボタンを押すも、 http://www.google.co.jp/webhp が表示され、検索が機能しない。 IE も NN も同様。"get" を "post" にしても同様。 どのようにすれば検索が機能しますでしょうか、よろしくご教授ください。

    • ベストアンサー
    • Flash
  • テキスト入力でYahoo!の検索エンジンが作成できない。

    毎日コミュニケーションズのFlash入門書 『おしえて!!FLASH MX2004』の 9-5(P148,P149)にある テキスト入力で検索エンジンの 作成方法についての質問です。 テキスト入力でテキストボックスを作った後、 「テキスト入力」フィールドが選択された状態で、 プロパティインスペクタ右下の「変数:」欄に、 Googleの変数名「q」を入れた後 ボタンを作成して下記のスクリプトを書きました。 on (release) { this.getURL("http://www.google.co.jp/search", "_blank", "GET"); } 作成したものに適当なキーワードを入力して ボタンを押すとネットに接続し検索エンジンの 結果が表示されました。 (↑ここまでが本に書いてあったことです。) これの応用でYahoo!の変数名「p」を入れた後 ボタンを作成して下記のスクリプトを書きました。 on (release) { this.getURL("http://search.yahoo.co.jp/bin/search", "_blank", "GET"); } しかし、半角英数字の検索はできたものの (※gooや19などの検索は可能) 日本語の検索はなぜか文字化けして できませんでした。 (※教えて!gooと入力すると  『謨吶∴縺ヲ・“oo』のように文字化けする。) おそらく変数に問題があると思われるのですが 私には問題を解決することができませんでした。 どなたかご存知の方がいらっしゃいましたら よろしくお願いします。

    • ベストアンサー
    • Flash
  • どちらもグーグル検索のサイト 違い

    この2つで同じキーワードで検索すると、検索結果が違いますが、なぜでしょうか? http://www.google.com/webhp?hl=ja http://www.google.co.jp/

  • google 何故 検索者が検索した地域がわかるんですか?

    googleで http://www.google.co.jp/webhp?hl=ja&tab=iw たとえば 『コンビニ』 と検索したとします。 一ページ目を少しスクロールしてみると、 自分の住んでいる道都府県の 庁所在地のある町の コンビニの位置が検索結果として地図で 表示されませんか? 何故 google は、 検索者が、どこの道都府県から、検索をしたかわかるのでしょう?か?

  • sleipnirでの検索バーについて

    こんばんは。 sleipnirを使っています。 検索バーを上の画面に設置していてそこに検索したいキーワードを入力してそのままエンターを押したり移動ボタンを押すと (例として【okwave】を検索したものです) http://www.google.co.jp/hws/search?hl=ja&q=okwave&client=fenrir&adsafe=off&safe=off&lr=lang_ja このページが表示されます。 しかしsleipnirの設定で検索バーの横に「検索カスタムボタン」を設置できてそこに「google(Web)」を設置しています。 ここで検索すると http://www.google.com/search?hl=ja&lr=&ie=UTF-8&oe=UTF-8&num=50&q=okwave このようなページになります。 グーグルで検索すると検索したキーワードと一緒によく検索されているワードが表示されて大変便利なんでよく使っているんですが 検索ワードを押していちいちマウスで移動させてクリックしなければならないのです。 そこでキーワードを入力してそのままエンターを押せば 「google(Web)」の検索で表示されるようにしたいのですが どうすればいいんでしょうか。 長文になりましたが回答待っております。

  • flashのボタンクリックで他のサイトにジャンプするには?

    flash professional 8 を使っています。ボタンを作って、それをクリックしたときに他のサイトにジャンプするようにしたいのですが、on (release) {getURL("○×○×");}と入力しても、「マウスイベントはボタンインスタンスでのみ使用できます。」というエラーが出ます。 ボタンは完璧に作れましたが、ジャンプがうまくいきません。アドバイスお願いします。

    • ベストアンサー
    • Flash
  • グーグル検索について

    グーグル検索で「XSpl​it」という単語を検索したのですが、あるサイトからコピペして検索した場合と「XSpl​it」と入力して検索した場合で検索結果が違ったのですが このようなことはあり得るのでしょうか? 「コピペして検索した場合」 http://www.google.co.jp/search?q=XSpl%E2%80%8Bit&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja:official&hl=ja&client=firefox-a 「入力して検索した場合」 http://www.google.co.jp/search?q=XSplit&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja:official&hl=ja&client=firefox-a

  • IE7/8のGoogle検索で常に「ウェブ全体から検索」になってしまう

    WindowsXP(SP3)のIE7/8のGoogle検索http://www.google.co.jp/で、 いつのまにか常に「ウェブ全体から検索」になった状態になってしまいました。 右上の「検索設定」ボタンを押して、 「検索設定の検索言語の設定」→「優先する言語」で 「日本語」に設定しようと思っても、添付画像のように、 既に日本語にチェックが入っており、グレーアウトされ、 日本語のみチェックのオンオフができません。 外国語は正常にチェックできて、保存されます。 ちなみに、以前は常に「日本語のページを検索」にできました。 cookieを削除したり、ctfmon.exeを復活させたりしましたが 解消されません。 全く同じ不具合報告が下記サイトにあります。 まだ解消されてないのでしょうか? http://www.google.com/support/forum/p/websearch/thread?tid=2712717663313bdf&hl=ja 以下のサイトならlang_jaなので、常に「日本語のページを検索」に なりますが、相変わらず日本語のみチェックがグレーアウトされ、 オンオフできません。 http://www.google.com/webhp?hl=ja&safe=off&num=100&newwindow=1&btnG=%E6%A4%9C%E7%B4%A2&lr=lang_ja http://www.google.co.jp/webhp?rls=ig&hl=ja&source=hp&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=lang_ja

  • Googleが2つあるんですけど!

    はじめまして。早速デすけど・・・。 (1)http://www.google.com/webhp?hl=ja (2)http://www.google.co.jp/ どちらも同じ日本語版Google。でも微妙に違います。 「専門学校」で検索したら検索結果が僅かに違いました! これってどういうこと?

  • 検索のときのURLについて

    検索のときのURLについて教えてくださいませm(__)m たとえばグーグルで 男前 と検索したいとき直接検索窓に 男前 と入力すると http://www.google.com/search?hl=ja&q=%E7%94%B7%E5%89%8D&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=lang_ja アドレスバーには結構長いURLが表示され、検索結果が出てきます。 でも直接アドレスバーに下記のようにURLを入れても http://www.google.com/search?hl=ja&lr=lang_ja&q=男前 ちゃんと検索されるんですね。 つまりお知りのほうの%E7%94%B7%E5%89%8D&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=lang_jaを日本語に置き換えてアドレスに入力しても検索されます。 ヤフーでもできるんでしょうか? たとえばやはり 男前 なら ヤフーだと http://search.yahoo.co.jp/search?fr=slv1-tbtop&p=%c3%cb%c1%b0 に なります。 これを http://search.yahoo.co.jp/search?fr=slv1-tbtop&p=男前 と 入力するとぜんぜん違う表示になってしまいます(^^; %c3%cb%c1%b0 の部分を日本語に変えてアドレスバーに入力 しても検索はできません。 ヤフーにはグーグルみたいなやり方はないんでしょうか? ご存知の方がいましたら、よろしくお願いいたしますm(__)m