• ベストアンサー

同じデータを2つのボタンに送信

○年○月~○年○月とプルダウンで範囲を選択したデータを2つのsubmitで送りたいのですが出来ません。 ここを見る限りJavaScriptなら出来そうなのですが、どうやったら出きるか教えて下さい。 formタグの中に2つのsubmitがある場合はこちらの質問でよく有ったのですが、formタグが2つ有ってそれぞれにsubmitが有るように作ってます。

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

  • ベストアンサー
  • yuchi-co
  • ベストアンサー率60% (29/48)
回答No.1

1のフォームに、プルダウンのリストがあり、もうひとつのフォームにもうひとつのsubmitボタンがあることを前提に考えていますが。 2のフォームにhiddenタグをセレクトリストの分だけ作り(name属性もセレクトリストと同じにしたほうがデータを受け取るとき便利)、submitボタンを type="button"に変更し、onclickで関数を起動するようにします。 その関数の中で、2のフォームのhiddenタグに1のフォームのセレクトリストのvalueをセットし、submit();するという方法でどうでしょうか? <html> <head> <script langage="javascript"> <!-- function hoge(){ document.fm2.start_year.value = document.fm1.start_year.value; document.fm2.start_month.value = document.fm1.start_month.value; document.fm2.start_day.value = document.fm1.start_day.value; document.fm2.end_year.value = document.fm1.end_year.value; document.fm2.end_month.value = document.fm1.end_month.value; document.fm2.end_day.value = document.fm1.end_day.value; submit(); } //--> </script> </head> <body> <form name="fm1"> <select name="start_year"> <option value="2006">2006</option> </select> <select name="start_month"> <option value="9">9</option> </select> <select name="start_day"> <option value="10">10</option> </select> <select name="end_year"> <option value="2006">2006</option> </select> <select name="end_month"> <option value="9">9</option> </select> <select name="end_day"> <option value="10">10</option> </select> <input type="submit" value="submit"> </form> <form name="fm2"> <input type="hidden" name="start_year"> <input type="hidden" name="start_month"> <input type="hidden" name="start_day"> <input type="hidden" name="end_year"> <input type="hidden" name="end_month"> <input type="hidden" name="end_day"> <input type="button" value="submit" onClick="hoge()"> </form> </body> </html>

tetsu666
質問者

お礼

自分のソースに当てはめて、少々手を加えたらできました! ありがとうございます!

関連するQ&A

  • 複数のsubmitによって送信するデータを変える

    HTML内にsubmitボタンが複数あるとします。 通常は、<FORM>タグの中の全てのデータを送信してしまいますが、 FORMタグを2つ用意しないで、 submit Aボタンはこの入力フォームの値を送信。 submit Bボタンはこの入力フォームの値を送信の様にできないものでしょうか?

  • Formタグ内で与えられるデータをボタンを押すなどの操作をせずに正しく送信したい

    私の職場では、私が今学内の何処に居るのか?出社はしているのか?などを示すために、行き先表示というシステムを使っています。 この実態はHTMLで作られた簡易的なもので、実際に行き先の入力などはFormタグを使いそれをただ表示しているだけです。 ですが、例えば「帰宅」という状態は一日1回必ず起こることですし、「出社」というのも朝必ずそうなります(休暇とかを除けば)。 しかし、そういった必ず行う動作にも一々プルダウンメニューから「帰宅」を探して入力して、明日は何時に出社するのかの予定時刻を手で入力して送信ボタンを押して確認にOKを押して・・・。 とするのが非常に面倒だなぁと(面倒臭がりな性格が悪いといえば沿うかも。。。)。 しかし、自分のHPをHTML入力で作ったりする趣味程度の知識を使って作業を簡略化できたら、と思いソースをのぞいてみた所、 <form action=xxxxx method=post> <select name="行き先は?"> <option value="zzzzz">zzzzz</option> <option value="hhhhh">hhhhh</option> ・ ・ ~中略~ <input type="SUBMIT" value="送信"> といったものでした。ここで、optionタグで「帰宅」という情報だけ残して全て削除し、送信ボタンを押さずにそのHTMLファイルが開かれた時点で データをactionタグで指定したURLに送信できたらいいのでは?と思いました。 しかし、Meta http-equiv="refresh" content="秒数;url= アドレス" を使うと、Form内の情報は送信されていないようで、結果のページには何も表示されず、行き先も変更されていませんでした。 そこで、皆様に質問です。Formタグを使って入力されたデータというのは、Submitで作ったボタンなどを使ったユーザーの操作がなければ絶対に送信できないのでしょうか? 今回はボタンを押す作業を簡略化できればいいなと思ったのですが、 別のやり方ならば実現できるのでしょうか?あるのであればその方法も教えて欲しいです。 ご教授、宜しくお願いします・。

    • ベストアンサー
    • HTML
  • JavaScriptでデータ送信

    あるJavaScriptを使ったPerlスクリプトの改造を行っています。 <A href="JavaScript:dataTrans()" class="link">link</A>をクリックすることにより、 function dataTrans(){ if(startflg){return;} if(max == 0){alert("メッセージ");return;} document.form1.para0.value = data; document.form1.para1.value = data2; document.form1.submit(); } 上記データをCGIページに送っているようです。 このJavaScriptから送信したデータはCGI側で正常に表示されているのですが、Perlスクリプトの改造でリンク元制限を行うと、送信元のページ情報をCGI側で読み取ることができていないようで、制限ができないようです。よくわかりませんが・・・ <A href="http://">link</a>からCGIへリンクした場合は、正常にリンク元制限が行えます。 document.form1.para0.value = data; document.form1.para1.value = data2; document.form1.submit(); この部分を変更すれば、リンク元ページ情報が正常に受信できるのではと考え、 http://pzxa85.hp.infoseek.co.jp/www/wwwjsfor.htm ↑ページ等の解説ページをみてみましたが、よくわかりませんでした。 JavaScriptは勉強したことがなく、Perlも入門者程度の知識です。わからないことだらけで、言いたいことが上手く伝えられませんが、出来るだけ調べて説明させてもらいますので、どうぞ宜しくお願いいたします。

  • GETやPOSTについて

    教えてください。 PHPやVbscriptなどでformタグにmethod="post"と書くのと、onclick="…"でJavascriptの中でsubmitするのと どのように違い、使い分ければ良いのでしょうか? Javascriptの記述で入力内容をチェックするような箇所は別にして、何か使い分けられるような ことはあるのでしょうか? Formのデータ量によって?使い分けるなど。 宜しくお願いします。

  • FORMで送信ボタンと戻るボタンを2つつけてそれぞれ遷移先を変えたい

       以下のような画面を作りたいのですが↓ -------------------------------------------------------------------------------- ● a.php (ユーザ情報入力画面) ※フォームに入力する画面    <FORM method="POST" action="b.php">   <INPUT type="text" name="mail">   <INPUT type="submit" name="submit" value="確認">  </FORM> ● b.php (ユーザ情報入力確認画面)※フォームに入力された値を表示する画面  <FORM method="POST" action="c.php">   <!-- ここには、フォームに入力された値を表示する -->   <INPUT type="submit" name="submit" value="登録"> // c.php に遷移する   <INPUT type="submit" name="submit" value="戻る"> // a.php に戻る  </FORM> ● c.php (完了画面) -------------------------------------------------------------------------------- b.php について質問なのですが、 b.phpにおいて、登録ボタンと戻るボタンを2つつけて、 それぞれ遷移先を変えたいのですが、どうすればいいんでしょうか・・・? <FORM method="POST" action="c.php">と書いてしまうと、 戻るボタンを押しても戻らずに、c.phpに遷移してしまいますよね?? こういう場合ってJavaScriptとかで遷移先を指定するんですか・・? もしそうでしたら、JavaScriptがよくわからないので できればサンプルコード示していただけると助かります・・・。   

  • formの送信ボタンをテキストにしたい・・・。

    タイトル通りなのですが、formの送信ボタンをテキストにしたいと思い、下記ページを見つけ試してみました。 http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1213552117 ペストアンサーの方の方法で、リンクされていたページのソースも見てみたのですがボタンとしての機能を果たさずクリックしてもページ遷移せず、カーソルの変更(矢印から指マーク)もしませんでした。 ソースを見る限り、JavaScriptを別途記述しているわけでもないようです。 記述したソース(form部分)はこれです。 HTMLべたうちではなく、PHPでソースを生成しています。 <form action='./aaa/bbb/ccc.php' method='POST' name='abc' id='abc'> <input type='hidden' name='flg' value='1' /> <span onclick='submit()'>メイン</span> </form> どの部分がおかしいなど指摘してもらえないでしょうか? また、別の方法で<span>部分を<a>にしてタグの中にJavaScriptでsubmit()を記述する方法も試してみたのですが、画面遷移するもののhiddenで記述した値が無視されてしまいました。 解決方法や別の方法などありましたら教えていただければと・・・。 条件として、ブラウザのアドレス部分にhiddenの内容が表示されないようにしたいです。

    • ベストアンサー
    • HTML
  • リンクからPOST送信を、右クリック・新しいタブで

    ・下記リンクの一番下に掲載されている「テキストリンクのサンプル」で、「右クリック」した後「 新しいタブで開く」を選択した場合でも、POST送信させることはできるでしょうか? ・「右クリック」と「onclick」は違う(?)ので、無理でしょうか? http://www.confrage.com/javascript/form/form_submit/form_submit.html

  • submitボタンのアラートを閉じても送信されてしまう

    初歩的な質問で恐縮です。 PHPでメールフォームを作っています。 submitを押した時に「送信してよろしいですか?」というアラートを出しているのですが、このアラートを閉じても(右上の「×」を押しても)送信されてしまいます。 ユーザーがやっぱり送信をやめたくても、submitを押してしまったら回避できないという状況です。 運用が迫っているため急ぎですが、ご教授いただけないでしょうか。 ボタンのソースはこちらです。 なお、<form>にonSubmitで記述した場合も同じでした。 <input type="submit" onClick="javascript:alert('こちらの内容で送信します。よろしいですか?')" value=" 送 信 "> ちなみに、内容チェックは送信されてから行っていますので、ここでは単純にアラートを出すだけです。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • ボタンを使用せずにpostでデータを送信する。

    お世話になります。 PHP5.0+Mysql5.0を使用してサイトを構築しています。 表示されているのがa.phpでその中のURLをクリックしてb.phpにデータを表示しようとしています。 そのときに、データをPOSTで送信したいのですが、 デザイン的な問題でボタンを使用せずに、リンクをクリックすることでPOSTデータを送信したいと考えています。 過去の質問を参考にしながらここまでは完成できました。 <form name="form1" action="b.php" method="post"> <input type="hidden" name="select" value=""> </form> <a href="" onclick="document.form1.select.value='datadata';document.form1.submit();return false;"> data</a> ただ、ここで問題が・・・ そのb.phpを新しいウインドウで大きさを使用して開きたいのです。 <a href="" onclick="window.open('b.php','','width=400,height=400'); return false;" > 「data1」を送信します</a> こうすれば出来るのはわかったのですが、上記2つを 同時に実行する方法がわかりません。 また、これはこうした方がいいというアドバイスも大変助かります。 よろしくご回答お願いします。

  • FORMタグ内に複数submitボタンがある場合の問題

    お世話になります。 質問タイトルがあまり適切でなくすみません。HTMLに関する質問です。 FORMタグ内に複数のsubmitボタンを配置し、FORM内のテキストボックスへフォーカスを充てた場合、Enterキーを押下すると上にあるボタンが反応してしまいます。 下のボタンを反応させたいのですが、JavaScriptを使わず下のボタンを指定する方法はあるのでしょうか。 ご存知の方いらっしゃいましたら、よろしくお願いします。 ■参考ソース <FORM id="form" action="ジャンプ先URL" > <INPUT type="text" /> <br /> <INPUT type="submit" value="ボタン1" /> <br /> <INPUT type="submit" value="ボタン2" /> </FORM>

    • ベストアンサー
    • HTML