- 締切済み
HTMLタグのoptionで
画像の利用希望時間のところで時間を選択するようにしているのですが、 前の画面からPOST送信で送られた「$start1」という変数が選択された状態にしたいとおもっているのですが、どうもうまくいきません。 どなたかわかるかたいらっしゃったらお願いします。 したのコードは、利用時間の所のコードです。 <tr> <td>利用希望時間</td> <td> <select name="start1"> <option value="">-- <option>9<option>10<option>11<option>12 <option>13<option>14<option>15<option>16<option>17 <option>18<option>19<option>20<option>21 </select> : <select name="start2"> <option value="">-- <option>00 <option>30 </select> ~ <select name="end1"> <option value="">-- <option>9<option>10<option>11<option>12 <option>13<option>14<option>15<option>16<option>17 <option>18<option>19<option>20<option>21 </select> : <select name="end2"> <option value="">-- <option>00 <option>30 </select>
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- ORUKA1951
- ベストアンサー率45% (5062/11036)
「前の画面からPOST送信で送られた「$start1」という変数が選択された状態にしたいとおもっている」という一文があるところから、画像は、そのデータを下に生成されたHTMLだと思われます。 (optionのエンドタグはoptionなので記述する=閉じる必要はありません。) post(標準入力)だろうが、get(Querystrings)だろうが、いったん変数$start1に代入するところまでは出来ているとします。 その後は配列@start1(1,2,3,4,5,6,7,8,9,10,11)の値をループして$start1を比較して一致すれば、<option selected>を、そうでなければ<option>を加えて、HTMLを書き出せばよいです。perlなら foreach(@start1){ if($start1==$_){print "<option selected>",$_;} else{print "<option",$_;} } 詳しくは、CGI ( http://oshiete.goo.ne.jp/category/251/ )
- 神崎 渉瑠(@taloo)
- ベストアンサー率44% (1016/2280)
「変数が選択された状態」というのが理解できませんが、 <option>が選択された状態にしたい場合は、selected属性を指定してください。
補足
$start1には、9~21の値が送られてくるようにしていて、もし時間の選択を間違っていた時に変更できるように、optionで変更可能な状態にしたいのですが、「--」のところに$start1を入れることはできたのですが、同じ数字が二つできてしまうので、UIに欠けるかなと思っています。 $start1に12が入れば変更するときには上に、「11」 下に「13」の選択肢が出るようにしたいと思っています。
まずタグくらい閉じろ
お礼
失礼いたしました^^;
>したのコードは、利用時間の所のコードです。 HTMLしか書かれてないけど…? >POST送信で送られた「$start1」という変数が というからにはPerlかPHPあたり使っているんですよね?ならそっちを書かなきゃ。 ということであなたが使っている言語のカテゴリできちんとコードを記述して再度質問しましょう。
お礼
$start1という変数は送られている状態なのですが、説明不足でした。
お礼
ありがとうございます^^ 回答の方法で挑戦してみたいと思います^^