
input type="hidden"で送る値を、セレクトした内容に応じて動的に変えるにはどうしたらよいでしょうか?
▽現状
<form action="search.php" method="get">
キーワード:<input type="text" name="keyword">
<select name="genreid">
<option value="0">すべての商品</option>
<?php foreach ($genres as $hit) { ?>
<option value="<?php echo ($hit->genreId); ?>">
<?php echo ($hit->genreName); ?>
</option>
<?php } ?>
</select>
<input type="hidden" name="genrename" value="<?php echo ($genres->genreName); ?>">
▽問題点
この書き方だと、<option value="0">を選択した際、「すべての商品」という文字列が送れません。
<option value="0">を選択した際は「すべての商品」を、
それ以外を選択した場合は、<?php echo ($genres->genreName); ?>を送りたいのですが、どう書けばよいでしょうか?
最終的には、遷移先で、$genrename=$_GET["genrename"];で利用する予定です。
▽その他
http://oshiete.goo.ne.jp/qa/6215844.htmlで回答いただいた内容で、解決したつもりだったのですが、新たな疑問が出てきたので、質問しました。上記でアドバイスいただいた、フォームを使わないやり方については、データをAPIから取得していること等もあり、どうやって処理してよいか分からないため、できればこのフォームでやりたいと考えてます…。
No.1ベストアンサー
- 回答日時:
<option value="0">すべての商品</option>
であなく
<option>すべての商品</option>
こうすれば
「0」のかわりに「すべての商品」が送信されるようになるわよ。
両方送りたいなら
<option value="0:すべての商品">すべての商品</option>
こうしてあげてPHPで分解してあげるのも一つの手よ。
どうしてもhiddenに格納して送りたいならJavaScriptでhiddenのvalueを書き換えるしかないわね。
回答ありがとうございました。
submitした時点で、option valueの値も利用するので(APIへ投げる)、
「hiddenのvalueを書き換える方法」を試してみたいと思います。
JavaScriptなので、そちらの方で聞いてみます。
http://oshiete.goo.ne.jp/qa/6217505.html
No.2
- 回答日時:
>「すべての商品」という文字列が送れません。
本末転倒していませんか?
サーバーからoptionのvalueをクライアントに渡しているわけですから
サーバー側はvalue=0のときは「すべての商品」を示すことは最初からわかっているわけです。
なので、「すべての商品」なんて文字列を無駄に送る必要はありません。
アドバイスありがとうございます。
>サーバー側はvalue=0のときは「すべての商品」を示すことは最初からわかっているわけです。
遷移先へ渡して、画面に表示させたり、ページタイトルとして利用したいと考えています。
もしかしたら、サーバー側から取得したら? といった主旨のアドバイスをいただいているのかもしれませんが、そのやり方が分からないので、hiddenで渡したいと思ってます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
phpでのセレクトボックスの値を...
-
プルダウンで選択された値を保持
-
ショッピングカートの精算
-
フォーム送信後の更新ボタンで...
-
HTMLで前の画面に戻る時、入力...
-
POSTデータをフォームに残す方法
-
フォームへの前回入力値をクリ...
-
PHPの質問:フォームから受け取...
-
PHPのエラーの解消法について教...
-
VBA で、スペースを含むファイ...
-
HTMLのリンクをクリックするこ...
-
フォームでのリセットを使う方法
-
PHP ボタンが押されたら処理を...
-
DBの値をチェックボックスに反...
-
フォームの状態やGETのURLは保...
-
テキストリンクをPOST送信したい
-
検索時の選択内容を保持する方法
-
php mysql でチェックボックス...
-
XMLデータをPOSTで送信・受信す...
-
フォームボタンを押すたびに数...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<select>文、foreachと初期値設定
-
複数 selectフォームから今回on...
-
vb2005のcomboboxについて
-
PHPとpostgreSQL プルダウンの作成
-
multipleを使用するとプルダウ...
-
[PHPとHTML]リストボックスにつ...
-
現在時刻を反映させた時刻のプ...
-
<select>の値によってclassを変...
-
セレクトしたときに全て初期状...
-
phpの変数について
-
local環境でのテストで、FORMタ...
-
2つのプルダウンメニュから受け...
-
既存エンジンを利用したHTML&P...
-
phpの質問です
-
PHP プルダウンメニュー
-
コンボボックス(プルダウン)...
-
プルダウンで選択された値を保持
-
PHPでセレクトメニュー
-
ホームページのセレクトメニュ...
-
多次元配列の値が変わってしま...
おすすめ情報