• ベストアンサー

テキストボックスの値のチェック

テキストボックスの値が未記入であったときに、submitボタンを押したときのジャンプ先のページを変えたいときはどのようにすれば良いのでしょうか? <input type="text" name="Test" size="25"> ↑ これが未記入の時は、 <form action="http://aaa.html" method="post" name="test"> にジャンプして、もし値が入っているときは、 <form action="http://bbb.html" method="post" name="test"> にジャンプさせるっていう感じにしたいのですが... 宜しくお願いします。

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

  • ベストアンサー
  • X-trail_00
  • ベストアンサー率30% (438/1430)
回答No.1

<form action="​http://aaa.html"​ method="post" name="testform" onsubmit='func()'> <script type='text/javascript'> function func() { if(testform.Test.value.length == 0) testform.action = "http://aaa.html"; else testform.action = "http://bbb.html"; return true; } </script> 上記のような感じでjavascriptを書けば実現できます。

Rubellite
質問者

お礼

早速こちらの方法でやってみたところ、上手く行きました! 本当にありがとうございました。

その他の回答 (2)

  • kokorone
  • ベストアンサー率38% (417/1093)
回答No.3

#2です。訂正です。 <input type="submit" name="entry" value="送 信"> を <input type="button" name="entry" value="送 信" onClick="javascript:chk_txt()"> に変更します。 <HEAD> <script language="javascript"> <!-- function chk_txt(){ with(document.test) { if(elements["Test"].value == ""){ // 未記入 elements["action"] = "http://aaa.html"; } else{ // 記入済み elements["action"] = "http://bbb.html"; } submit(); } } //--> </script> </Head> を追加します。

Rubellite
質問者

お礼

こちらの方法もエレメントをきちんと記載した方法で、大変分かり易くて参考になりました。 ご回答、ありがとうございました!

  • kokorone
  • ベストアンサー率38% (417/1093)
回答No.2

<input type="submit" name="entry" value="送 信"> を <input type="button" name="entry" value="送 信" onClick="javascript:chk_txt()"> に変更します。 <HEAD> <script language="javascript"> <!-- function chk_txt(){ with(document.test) { if(elements["Test"].value == ""){ // 未記入 elements["action"] = ​http://aaa.html"; } else{ // 記入済み elements["action"] = ​"​http://bbb.html"; } submit(); } } //--> </script> </Head> を追加します。 老婆心ながら、formの名前と、テキストボックスの名前は、明示的に 区別されていますよね?

関連するQ&A

  • テキストを値として渡したいんですが。

    HP上に表示しているテキストをクリックすると その値をPHP等に渡せるようにしたいんですが。 <FORM method="post" action="text.php"><INPUT size="20" type="text" name="text" value="テキスト"> <input type="submit" name="submit" value="検索"> </FORM> 上記のようなタグを挿入して、ボタンをクリックするとPHPを呼び出すのではなく あくまでテキストそのものをクリックすると そのテキストと同一の値が渡せるようにしたいんです。 PHPのカテゴリで質問するのかどうか悩んだんですが HTMLのカテゴリに質問してみました。 よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • 同一ページの複数のフォーム通信

    お世話になります。 <form method='POST' action='#1'> <input name='text1'> <input name='text2'> <form method='POST' action='#2'> <input name='text3'> <input method='submit' value='B'> </form> <input method='submit' value='A'> </form> Aにて text1,2,3を#1へ送信 Bにて text3を#2へ送信 したいのですが、上手くできません。 <form></form>で囲まれている中に 更に<form></form>する事はできないのでしょうか? 代替案はありますか?? よろしくお願いします。

  • フォームのテキストボックスの初期値が携帯で表示されない

    携帯用の入力フォームを作成しており、初期値をvalueで指定しているのですが、正しく表示されません。必要な部分のみを抜き出して次のようなシンプルなHTMLで試しています。 <html> <head> </head> <body> <form action="test.cgi" method="post" name="form1"> <input type="text" name="test" value="aaa" /> </form> </body> </html> パソコンで表示するとテキストボックスの中に「aaa」と初期値が表示されるのですが、AUの携帯から見るとテキストボックスが空になります。ちなみに「name="test"」を削除してみると正しく初期値「aaa」が表示されます。 原因がわかる方がいらっしゃいましたら、お教えください。 よろしくお願いします。

  • POSTされた値でイベント実行

    フォームからpostされたときに、特定の値が入っているときのみJavaScriptにてイベントを発生させたいのですが、どのようにすればいいのかわかりません。 <form action="#" method="post" name="test"> <input type="checkbox" name="a" value="1"> <input type="submit" name="submit" value="送信"> </form> このようなソースの場合でsubmit後、aに値が入っている場合のみイベントを発生させたいと考えています。そのようなことは出来ますしょうか? よろしくお願いします。

  • テキストボックスが、縦長になる

    このokwaveの質問テキストボックスのようなテキストボックスを作りたいです。 パソコンだけの利用です。スマホ対応は不要です。以下のようなcgiを書きました。 textarea{ のwidtを増やしたり、col=を増やしたりしていますが、横幅が狭いままで、縦長のテキストボックスになります。 どうすればよろしいでしょうか? <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <style type="text/css"> textarea { width 1000ptx; height 40em; } </style> </head> <form action="insert_data.cgi" method="post"> <input type="hidden" name="mode" value="display_data"> Data text<br> <textarea name="data_text" value="" col="1000" rows="50"></textarea> <input type="submit" value="SUBMIT" style="font-size:x-large;" /> </form>

    • ベストアンサー
    • CGI
  • submitではなくbuttonで送信

    事情があり、submitではなくbuttonでフォームのデータを送信したいのですが、以下のように書くとbuttonでは4567が送信されません。 <form action="test.cgi" method="post"> <INPUT type="hidden" name="aaa" value="1234"> <INPUT type="submit" name="bbb" value="4567"> </form> ↓ <form action="test.cgi" method="post"> <INPUT type="hidden" name="aaa" value="1234"> <INPUT type="button" name="bbb" value="4567" onclick="submit();" > </form> submitと同じように、bbbのデータ4567も送信するにはどのように書けばよいのでしょうか? 宜しくお願いします。

  • フォームのテキストボックス内の値の制御

    以下の[1234568]という、半角数字8桁の初期値がありますが、 このテキストボックスの ・常に上4桁(1234)だけをReadOnlyにし、選択/削除/書き換え一切不可に ・フォーカスが置かれた瞬間、下四桁の数字だけを、自動で選択状態にする なんてことはできますか? 全部をReadOnlyにしたりはできるのですが・・・よろしくお願い致します。 <html> <head></head> <body> <form method="post" action="list.php" target="list" id="query" name="query"> <input value="12345678" type="text" name="numberform" onblur="Check1();"> <input type="submit" name="exec" value="検索"> </form> </body> </html>

  • onSubmitでフォームの値を変える

    PHP+SQLでサイトを作っています。 いまa.phpでメールアドレスを入力した後、 ”進む”を押すとb.phpにジャンプし、 ”戻る”を押すと$flagの値を変更し、a.php(自分自身)にジャンプするようにしたいと思っています。 一応、ジャンプできるところまではきたのですが、 $flagの値はの値はどのようにすれば、変更できるのでしょうか? <form method="post" > <input type="text" name="mail_address" value=".$mail_address."> <input type="hidden" name="flag" value=".$flag."> <input type="submit" value="戻る" onClick="form.action='a.php'";return ture"> <input type="submit" value="進む" onClick="form.action='b.php'";return ture"> </form>

  • チェックボックスのデータの受け取り方について

    以下のようなチェックボックスを作ったとき、 test.phpではどうやって受け取ればよいのでしょうか? nameがそれぞれ違う場合は分かるのですが... 教えてください。 <form method="POST" action="test.php"> <input type="checkbox" name="color" value="red">赤</input> <input type="checkbox" name="color" value="blue">青</input> <input type="checkbox" name="color" value="white">白</input> <input type="checkbox" name="color" value="black">黒</input> <input type="submit" value="送信" > </form>

    • ベストアンサー
    • PHP
  • データを送るのと値を渡すのを同時に行いたい

    a hrefでデータを送るのと値を渡すのを同時に行いたいのですがどうすればいいのでしょうか。 下記のa hrefでのデータを送りに<a href="http://www.localhost/hoge.php?name=papa&age=30"> のような固定された値を受け渡したいのですがどのようにすてばいいのでしょうか <form name="form1" action="test" method="post"> <input type="hidden" name="str" value="aaa"> <A HREF="javaScript:form1.submit();">ここの書き方がわかりません</A> <form>

専門家に質問してみよう