フォームに入力された値をリンクに入れる方法

このQ&Aのポイント
  • フォームに入力された値をリンクに入れるためには、JavaScriptを使用します。
  • リンクにフォームの値を渡すためには、フォームの値をJavaScriptで取得し、リンクのURLに渡す必要があります。
  • 具体的には、マウスオーバーイベントが発生した際にJavaScript関数を呼び出し、フォームの値を取得してリンクのURLに設定することで実現できます。
回答を見る
  • ベストアンサー

フォームに入力された値をリンクに入れる

↓フォーム  ↓リンク |222-0033| 郵便番号検索 フォームに入力された値を郵便番号検索で http://www.benri.com/zipcode/ などのページに接続したいと考えております。 元のフォームに住所を入力するまでは不要です。 検索されたURLを検索してくれるだけでOKです。 リンクは <A HREF ="http://www.benri.com/zipcode/zipcode.cgi?keyword=???" onMouseOver="searchfor" > としました。 ???の部分をどうやって取得していいか困っています。 一応、マウスオーバーすると、下のjavascriptが起動するように作ってみました。 keyword = document.KIHON.post.value; が、ダメでした。 どうやったらリンクにフォームの値を渡すことができるでしょうか?

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

  • ベストアンサー
  • gaku1
  • ベストアンサー率71% (10/14)
回答No.2

No.1です。 >a href="javascript:searchfor(document.form(0).post.value)" の,「form(0)」の部分は「forms[0]」が正しいのではないでしょうか。 ・単数形ではなく複数形 ・関数を表す丸括弧ではなく,配列添え字を表す角括弧 の2点です。

ma_trix
質問者

お礼

ずばりその通りでした。完成しました。 断念しかけたので、めちゃくちゃうれしいです。 ありがとうございましたm(__)m

その他の回答 (1)

  • gaku1
  • ベストアンサー率71% (10/14)
回答No.1

こんな感じで良いでしょうか?リンクでなくてボタンですけど・・・。 <script> function aa(x){ location.href="http://www.benri.com/zipcode/zipcode.cgi?Keyword="+x; } </script> <form name="aaa"> <input type="text" name="aaaaa"> <input type="button" value="検索" onclick="aa(document.aaa.aaaaa.value)"> </form> 「ボタンはダメ」ならボタンの代わりに, <a href="javascript:aa(document.aaa.aaaaa.value)">検索</a>

ma_trix
質問者

お礼

回答ありがとうございました。 ボタンはダメなので、<a href="javascript:aa(document.aaa.aaaaa.value)">検索</a>の方でやってみたんですが、document.aaa.aaaaa.valueの値があるとうんともすんともいわないんです。javascript:aa()だと一応URLジャンプするんですが・・・。 a href="javascript:searchfor(document.form(0).post.value)という表記でどこか悪いところあるでしょうか?

関連するQ&A

  • フォームの値をリンクで渡す方法

    ふつうはフォームで <input type = "text"> <input type = "hidden" name ="test1"> <input type = "hidden" name ="test2"> <input type = "hidden" name ="test3"> <input type = "hidden" name ="test2"> とやっていけばいくつものフォームの値を渡せますね。 今回はリンクにフォームの値を入れたいのです。 a href ="http://sig.com/win.cgi?text1=$text1&text2=$text2" test1はリンクの値。 text2がテキストボックスのフォームの値です。 どうやってtext2の値を上のハイパーリンクに入れられるでしょうか? やはりJAVASCRIPTを使う必要があるでしょうか? (他の質問で解決済み) フォームとリンクの値を同時にCGIに渡す方法を教えてください。 自分としては1つ1つ値を渡していくしかないか、と考えました。

    • ベストアンサー
    • Perl
  • フォームから入力される値のチェックについて

    お世話になります。PHP勉強中の初心者です。 タイトルにありますようにフォームから入力される値のチェックについてわからないことがあるので質問いたします。 私は書籍やサイトなどの例を参考にして郵便番号の入力値チェック(ハイフンなし)を if(!preg_match("/^[0-9]{7}$/",$_POST[zipcode])){ //エラーメッセージ } else{ $zipcode = $_POST[zipcode]; } のように記述しています。 この場合、POSTのデータが改ざんされたとしても数値以外は受け付けないので、これだけで「入力された値は安全」と考えて良いのでしょうか。 また、もしもこれが安全だとするなら、かなり極端な例ですが、 if(!preg_match("/^[一-龠ぁ-んァ-ヴーa-zA-Z0-9a-zA-Z0-9\s\ \¥\(\)\(\)\「\」\!\”\’\% \%\&\&\’\~\-\-\+\+\<\>\.\,\,\、\。\_\_\;\:\:\『\』\【\】\[\]\/\@\?\=\=\÷\× \・\※\■\□\★\☆\▲\△\▼\▽\◎\○\●\〒\←\→\↑\↓\…]{1,50}$/u",$_POST[str])){ //エラーメッセージ } else{ $str = $_POST[str]; } とすれば、POSTデータをそのままHTML表示したりデータベースなどに受け渡しても問題ないのでしょうか(文字コードはサイト全体でUTF-8を使用)。もしこれで安全なら、{1,50}の箇所で文字数の上限・下限も同時にチェックできるので使う場所によってはけっこう便利かなと思うのですが。。。 ひとりで学習しているので、入力チェックやエスケープなどどのようにしたら安全なのかわからず日々手探りの状態が続いています。お時間があれば皆さんがよく使う入力チェックやエスケープのやり方などもご教授いただけると幸いです。 どうぞよろしくお願いいたします。

    • ベストアンサー
    • PHP
  • リンク先のフォームに値をいれるには…

    こちらのカテゴリで合っているのかよくわかりませんが、教えていただけると助かります。 商品一覧のようなページ(HTML)から商品それぞれについているリンクを押すと、問い合わせフォームに飛び、フォームに選択した商品名が入力されているような形をとるにはどのようにすれば良いのでしょうか。 フォームは、無料のCGIを使用しております。 CGIの知識がほぼ皆無です。 簡単な方法や、無料で使えるCGI等を教えていただけますでしょうか。 よろしくお願いいたします。

    • ベストアンサー
    • CGI
  • あらかじめフォームに内容を入力させたい

    こんにちは。フォーム入力に関することで質問させていただきます。 1つのページに10個の商品を置き、それぞれの説明の横に 「お問い合わせはこちら」というリンクを貼っています。(リンク先は全て同じ) ですが、問い合わせのページ自体は全て同じなので、一体どの商品についての問い合わせなのか分かりません。 なので、問い合わせのページに一緒に商品番号を入力する欄を作ったのですが、わざわざお客様に商品番号を入力させるのは手間です。 なので、リンクをクリックして問い合わせページに移ったときに、あらかじめ商品番号が入力されている形にしたいのです。 <a href="contact.html?商品番号=123123123">お問い合わせはこちら</a> のような感じです。 しかし具体的にどうやればいいかわかりません。javascriptで再現できるでしょうか? phpやcgiの知識はまったくないので、どうぞよろしくお願いします。

  • <フォーム内 商品番号 自動入力機能 に関する質問>

    <フォーム内 商品番号 自動入力機能 に関する質問> メモ帳に、htmlで作成した、10商品程度の商品紹介ページがあります。 各商品には、商品番号がついていて、それぞれに問い合わせボタンを つけ、お問い合わせフォームにリンクをつけて、いずれも同じCGIフォーム へのリンクのため、商品番号はお客様に手入力をしてもらっています。 問い合わせボタンを押すとフォーム中で商品番号が自動入力 されるようにしたいと思っていますが、htmlを追加するだけで 簡単にできるものでしょうか。 ASPのショッピングカートをつける際に、各商品のところに 数行のhtmlを追加してカートへのリンクをつけるだけ だったため、同じような作業でできるのであれば 挑戦してみたいと思いました。 それとも、プログラミングなどの技術がないと難しいものなので しょうか・・・・ 現在、お問い合わせフォームへのリンクの部分はこのように なっています。 ファーストサーバのフォームCGIを使っています。 サーバのサポートにきいてみたら、希望しているような 機能やツールはないということでした。。。 <a href="https://www.自分のサイト/FS-APL/FS-Form/form.cgi?Code=otoiawase" target="_blank"> <img src="問い合わせボタンの画像.gif"> </a> よろしくお願いします!

  • リンク元からの値によってマウスオンの画像を選ぶには

    リンク元のページから値を(href="xxx.html?id=1でいいでしょうか)リンク先へ渡し、 リンク先では($id = $_GET['id']でいいでしょうか)その値を受け取り、 値によってonMouseOverで出す画像が決まるようにしたいのですが (受け取った値が1だったら画像a、2だったら画像b、という風に)。 初心者であれこれ調べているのですがこれ以上わかりません。 なるべく簡単な方法で、どうぞよろしくお願いします。

    • ベストアンサー
    • HTML
  • 検索フォームから入力されたキーワードをresult.phpというファイ

    検索フォームから入力されたキーワードをresult.phpというファイルで $keyword = $_POST[keyword]; このように受け取っています。 ところが、キーワードによっては1ページで収まらないため、 result.php?p=2 このようなURLで「次のページへ」というリンクにしているのですが $keywordの値を保持していない(?)みたいで思い通りの表示ができません。 このようなページ移動の場合、どのようにしたら受け取った変数の値を保持できるのでしょうか。 ためしに次のようにセッションを使ってみたのですが、 session_start(); $_SESSION["keyword"] = $_POST[keyword]; うまくいきませんでした。 動的に移動する同じファイル内で変数を保持するにはどのようにしたらいいのでしょうか?

    • ベストアンサー
    • PHP
  • フォームに入力された内容を,次ページのフォームへ活かすには

     初心者ですのでよろしくお願いします。  現在 php と MySQL でデータ検索システムを制作しております。  データベースの検索は完成したのですが,利用者のために次のようなフォームを利用したいと思っています。 (1)フォームから検索語を入力したとします(例えば”北海道 小樽”)。 (2)するとデータベースから条件にあった内容が返されます(例えば小樽駅の写真など)。検索結果の上部には,検索入力フォームが配置しています(←ここがポイント)。 (3)しかし,検索結果が多すぎるため,新たに検索語を追加して検索しようとします。 (4)その時に,入力フォームには何も文字が入っていない状況になっています。ここに,今回の例であれば”北海道 小樽”というキーワードが残っていて,追加のキーワード入力を可能にしたいです。  グーグルなどの検索エンジンでも,検索した後も入力フォームに検索キーワードが残っていますよね?それをしたいのですが,簡単そうでいろいろと本を調べても見つかりませんでした。どなたかご指導よろしくお願いします。  ちなみに,HTMLだけで済めば良いのですが,phpでも勉強しますので,よろしくおねがいします。

    • ベストアンサー
    • PHP
  • 郵便番号検索フォームにおけるJavascript 制御で質問です

    失礼します。 郵便番号検索フォームを作成しているのですが、 サーバー側の仕様で、郵便番号を入力するtextbox の name値が固定されています。 必ず「name="p01:03"」と指定しなければなりません。 問題はname値に“:”が使用されているため、Javascriptがうまく動作しません。 ※フォーム(CGI)における値の受け渡しは問題ないです。 “:”を避けて実行する方法を探していますが、 うまくいきません。指示を頂けたらと思います。 --------------------------------- HTMLページの郵便番号欄: <form name="form">・・(略)・・・ 郵便番号:<input type="text" size="15" name="p01:03" value="" /> Javascript: 実行させるとindex.cgiのpost1へ値を飛ばします。 var target = 'http://www.テスト/index.cgi?template=zip.html&post1=' + document.form.p01:03.value; エラー:オブジェクトを指定して下さい。 ---------------------------------

  • 郵便番号の検索ができるメールフォームについて

    郵便番号の検索機能がつけられるメールフォームのCGIを探しています。 具体的には、ajaxzip3の郵便番号検索機能が使えて、その検索結果をきちんと反映できるCGIです。 今までいくつかのCGIを試してみましたが、相性があるようで、うまく反映されません。 CGIサンプル(できれば、shift-jis対応のもの)があれば教えて頂きたいです。 宜しくお願い致します。

    • ベストアンサー
    • CGI

専門家に質問してみよう