フォームを送信してそのフォームで選択した内容を
フォームの下の部分に表示するようなプログラムを作りたいのですが
送信するとフォームの選択内容が戻ってしまいます。
選択を保持して表示するにはどうしたらよいですか?
路線情報の検索みたいな感じにしたいということです。
****self.php****
<html>
<head></head>
<body>
<form action='self.php' method=get>
<select name='num' id='num'>
<option name='5' value='5'>5</option>
<option name='7' value='7'>7</option>
</select>
<br><input type=submit value='送信'>
<form>
<script language="javascript">
document.open();
document.write(<?php print $_GET["num"]; ?>);
document.close();
</script>
</body>
</html>
No.2ベストアンサー
- 回答日時:
たとえばこんな風に処理します
<?PHP
$select["num"]=array();
$option["num"]=array("nodata","5","7");
$request["num"]=(isset($_REQUEST["num"]) and in_array($_REQUEST["num"],$option["num"]))?$_REQUEST["num"]:"nodata";
foreach($option["num"] as $val){
$select["num"][$val]=($request["num"]===$val)?" selected=\"selected\"":"";
}
//print_r($select); //チェック用
?>
<html>
<head></head>
<body>
<form>
<p>
<select name='num'>
<option value=''<?PHP print $select["num"]["nodata"];?>>選択する</option>
<option value='5'<?PHP print $select["num"]["5"];?>>5</option>
<option value='7'<?PHP print $select["num"]["7"];?>>7</option>
</select>
<input type=submit value='送信'>
</p>
<form>
</body>
</html>
No.1
- 回答日時:
form内容の保持はサーバサイド(PHP)で処理すべきです。
PHPなら $_GET でform内容を受け取れるはずなので <option selected> で選択させて下さい。
document.write(<?php print $_GET["num"]; ?>);
この部分もPHPで出力すれば済むはずでJavaScriptで出力する必要はないように思えます。
早速の回答ありがとうございます。
>>document.write(<?php print $_GET["num"]; ?>);
よく考えたらわずらわしい事やっちゃってましたね
初めフォームの状態をJavaScriptで抽出して書きだそうとしてたので
そこにphpの要素を取り入れたら変な書き方になってしまいました。
問題の箇所以外の部分にも不安があったので、ありがとうございます。
選択させる部分が具体的にいまいちわからなかったのですが
<option name='5' value='5'
<?php print ($_GET['num']==5) ? "selected" : ""; ?>
>5</option) >
<option name='7' value='7'
<?php print ($_GET['num']==7) ? "selected" : ""; ?>
>7</option>
このような書き方で問題ないですか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- JavaScript セレクトを全て選択されていないと、文字によるエラーメッセージを表示させるコードを調べています 2 2023/06/22 15:48
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- JavaScript セレクトボックスを2つ選択してメッセージなどを表示するには。~運賃検索プログラムを完成させたい~ 1 2022/07/22 11:10
- JavaScript セレクトボックスで配列を呼び出したい。 1 2022/07/08 20:14
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プルダウンメニューアイテムの...
-
プルダウンメニューでインライ...
-
セレクトボックスの値による入...
-
VB6.0でコントロール配列の配列...
-
プルダウンメニュー項目のフォ...
-
複数のプルダウンからリンクす...
-
form actionでmailtoを指定する...
-
複数のフォームを一括で送信す...
-
submitをボタン以外にするには
-
長文のmailtoの使い方
-
1アクションでPOST・GET、両方...
-
フォームに入力した値をURLに付...
-
親ページからインラインフレー...
-
<a href=**?***=***>をGET方式で
-
mailtoによる送信ができない
-
送信ボタン押下時に値が未入力...
-
一括で値を入力するには?
-
inputタグのclass名にコロン「:...
-
リンクをクリックした時にform...
-
お問い合わせフォームの送信後...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
セレクトボックスを切り替える...
-
プルダウンメニューを選択した...
-
プルダウンメニューで、選択項...
-
switch文のswitch(n)の部分を複...
-
プルダウンメニュー項目のフォ...
-
プルダウンメニューアイテムの...
-
リストボックス全選択について
-
クリックすると下に項目が出て...
-
セレクトボックスの値による入...
-
HTMLのoptionタグ部分に画像を...
-
複数のプルダウンの値をパラメ...
-
Rails のコンボボックス(selec...
-
セレクトボックスを2つ設けて選...
-
<SELECT>タグでの selected 状...
-
プルダウンメニューでインライ...
-
セレクトボックスの幅をプルダ...
-
連動プルダウンのリンクについて
-
IE6とIE8のSELECTタグの11と31
-
<SELECT>の<option value="#">...
-
複数のプルダウンメニューの作...
おすすめ情報