電子書籍の厳選無料作品が豊富!

質問というより、アンケート的ですが、SELECTの子要素のOPTIONのデフォルト状態を指定するような、default属性のような機能が欲しいと思うことはありませんか?

たとえばこのような使い方です。
<select default="13">

<option value="12">千葉県</option>
<option value="13">東京都</option>
<option value="14">神奈川県</option>

</select>

サーバーサイドのスクリプトでoption要素を動的に出力するときにコードを書くのもらくだと思うのです。

A 回答 (3件)

たとえば、サーバーサイドでselectedを指定する場合、ループの中でいちいち値を判定するのがめんどくさいな。

という意味でしょうかね。たしかに、親要素のdefault属性なりに値を設定することができたら、ループ判定いらなくなって楽ですよね。ただ、一度selectを出力するメソッドを組んでしまえば、特別な問題にはならないような。。
MVCとじゃなくて、処理速度の問題を言ってるの?

この回答への補足

例えがあまり良くなかったかもしれませんが、その通りです。MVCで記述するときというより、Ajaxを使った連動するSELECT要素などでは便利になると思うんですよね。「都道府県」→「市区町村」のようなものです。

補足日時:2012/05/24 14:52
    • good
    • 0
この回答へのお礼

ありがとうございました

お礼日時:2012/07/03 18:56

当然ご存知でしょうが、optionには、selected属性があります。


 仕様書には明記されていませんが、selectrd要素は書くべきとされています。
17.6.1 選択済み選択肢 ( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html4 … )

 サーバーサイドでプログラムを組むときも事前に
<select name="ken">
  <option value=12" $selected_KEN[12]>東京
  <option value=13" $selected_KEN[13]>神奈川
  <option value=14" $selected_KEN[14]>埼玉
・・・
</select>
とかしておくので、不便はまったく感じません。
    • good
    • 0
この回答へのお礼

そういう仕様を策定してもいいんじゃないか?という意味です。

お礼日時:2012/07/03 18:55

一応、selectedにすればデフォルトで指定はできますね。



<select>

<option value="12">千葉県</option>
<option value="13" selected="selected">東京都</option>
<option value="14">神奈川県</option>

</select>

サーバーサイドですることを考えると

selectedid = 13
for(i:0->n) {
 print : <option value="(i+1)";
 if(selectedid)
  print : selected="selected";
 endif
 print : > (arr[i]) </option>;
}

のようなイメージでしょうか。

この回答への補足

いえいえ、一応WEBプログラミングで飯食っているので、プログラミングの作法を聞いているわけではないんですよ。
提案とでも言ったらいいのでしょうか。
MVCでプログラミングするときにその方が楽だと思うんですよね。

補足日時:2012/05/23 00:29
    • good
    • 0
この回答へのお礼

ありがとうございました

お礼日時:2012/07/03 18:56

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!