• 締切済み

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>

みんなの回答

  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.4

「前の画面から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/ )

kei114477
質問者

お礼

ありがとうございます^^ 回答の方法で挑戦してみたいと思います^^

回答No.3

「変数が選択された状態」というのが理解できませんが、 <option>が選択された状態にしたい場合は、selected属性を指定してください。

kei114477
質問者

補足

$start1には、9~21の値が送られてくるようにしていて、もし時間の選択を間違っていた時に変更できるように、optionで変更可能な状態にしたいのですが、「--」のところに$start1を入れることはできたのですが、同じ数字が二つできてしまうので、UIに欠けるかなと思っています。 $start1に12が入れば変更するときには上に、「11」 下に「13」の選択肢が出るようにしたいと思っています。

noname#150436
noname#150436
回答No.2

まずタグくらい閉じろ

kei114477
質問者

お礼

失礼いたしました^^;

noname#158634
noname#158634
回答No.1

>したのコードは、利用時間の所のコードです。 HTMLしか書かれてないけど…? >POST送信で送られた「$start1」という変数が というからにはPerlかPHPあたり使っているんですよね?ならそっちを書かなきゃ。 ということであなたが使っている言語のカテゴリできちんとコードを記述して再度質問しましょう。

kei114477
質問者

お礼

$start1という変数は送られている状態なのですが、説明不足でした。

関連するQ&A