アプリ版:「スタンプのみでお礼する」機能のリリースについて

Java(フレームワークはSeasar)とXHTMLを使用したサイトなのですが、
データベースから取得した値を初期状態でSELECTに選ばせることができません。

DBで取得した値はJavaで

public String menuDispFlg;

と宣言された変数に格納されています。
デバッグで変数に値が格納されていることは確認できています。
SELECT部分を抜き出したソースが↓です。

<form id="form">
 <div class="salesis">
  <div class="salesIn">
   <div class="main">
    <div class="mainIn">
     <div class="cF">
      <div class="commontbl">
       <table cellpadding="0" cellspacing="0">
        <tr>
           ・
           ・
           ・
           (略)
           ・
           ・
           ・
         <th scope="row"><p>メニュー表示</p></th>
         <td class="A">
          <select id="menuDispFlg" name="menuDispFlg" tabindex="10">
           <option value="0" label="制御しない"></option>
           <option value="1" label="制御する"></option>
          </select>
         </td>
        </tr>
       </table>
      </div>
     </div>
    </div>
   </div>
  </div>
 </div>
</form>

DBからmenuDispFlg = "1"を取得しても、一番上の"制御しない"を常に選択した状態になっています。
このSELECTで"制御する"を選択するとちゃんとmenuDispFlg="1"で送信されるのですが、変更する前の値がわからなくなるのでどうにか修正したいです。
よろしくお願いいたします。

A 回答 (3件)

 <option value="value" label="label" selected></option>


というように、
選択肢を初期状態で選択済みにするにはselected属性をつけてください。

この回答への補足

DBから取得したmenuDispFlgが0のときは"制御しない"を、1のときは”制御する"を選択済みにするよう分岐させたいのです。

補足日時:2014/02/21 16:25
    • good
    • 0

> DBから取得したmenuDispFlgが0のときは"制御しない"を、1のときは”制御する"を選択済みにするよう分岐させたいのです。


Seesarはつついたことがないので具体的なコードは書けませんが、
 <option value="0" label="制御しない" (menuDispFlgが0ならselectedを出力)></option>
 <option value="1" label="制御する" (menuDispFlgが1ならselectedを出力)></option>
という風にできませんか?
    • good
    • 0

JSFを使っているなら、h:selectOneListbox か h:selectManyListboxを使います。



参考URL:http://ameblo.jp/kurabeat/entry-10588827749.html
    • good
    • 0

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