[Seasar-user:3655] selectManyCheckBox について
Toba Tetsuya
[E-MAIL ADDRESS DELETED]
2006年 5月 19日 (金) 13:49:07 JST
S2JSF 1.1.0 betaを用いて、システム開発を行っています。
ラジオボタンを使って、テーブルの行を選択をするレイアウトは、
下のように selectOneRadio を使って実現できました。
<form>
<span m:inject="s:selectOneRadio"
m:value="#{sample.selectedIndex}">
<table>
<tr>
<th>ラジオ</th>
<th>氏名</th>
</tr>
<span m:inject="s:forEach"
m:items="#{sample.nameList}"
m:var="e" m:varIndex="i">
<tr>
<td>
<input type="radio" value="#{i}"></input>
</td>
<td>
<span m:value="#{e.name}"></span>
</td>
</tr>
</span>
</table>
</span>
<input type="submit" m:action="index"></input>
</form>
ところが、複数選択するために selectManyCheckbox を使って
チェックボックスに変えたところ、チェックボックスすら出て
こない状態となりました。
HTMLソースを見ると、inputタグ自体が消えていました。
<form>
<span m:inject="s:selectManyCheckbox"
m:value="#{sample.checkedIndex}">
<table>
<tr>
<th>チェック</th>
<th>氏名</th>
</tr>
<span m:inject="s:forEach"
m:items="#{sample.nameList}"
m:var="e" m:varIndex="i">
<tr>
<td>
<input type="checkbox"
m:inject="s:selectItem"
value="#{i}"></input>
</td>
<td>
<span m:value="#{e.name}"></span>
</td>
</tr>
</span>
</table>
</span>
<input type="submit" m:action="index"></input>
</form>
テーブルタグやforEachを取り除いてやると、正しく動くようです。
<form>
<span m:inject="s:selectManyCheckbox"
m:value="#{sample.checkedIndex}">
<input type="checkbox"
m:inject="s:selectItem"
value="0"></input>
<input type="checkbox"
m:inject="s:selectItem"
value="1"></input>
</span>
<input type="submit" m:action="index"></input>
</form>
selectManyCheckBox では、このような使い方はできないのでしょうか?
--
鳥羽 哲也
Seasar-user メーリングリストの案内