如何读取单选按钮的值

时间:2010-02-18 07:38:26

标签: jsf seam richfaces

我想在表单提交上阅读所选的角色信息(从角色列表中为用户选择一个角色)。如何在EntityHome界面中读取所选的单选按钮值(注意:我不想在这里使用h:selectOneRadio选项)

                                <tr>
                                    <s:div rendered="#{userHome.instance.type ne 'admin'}">
                                        <th width="150" class="rich-table-subheadercell center">#{_user.getName()}</th>
                                    </s:div>


                                    <c:forEach items="#{userHome.instance.roles}" var="_role">
                                        <td width="150" class="center" style="background: rgb(100, 100, 100) none repeat scroll 0% 0%;">
                                            #{_role.name}
                                            <input type="radio" style="display : none" name="#{userHome.instance.id}" value="#{_role.id}"/>
                                        </td>
                                    </c:forEach>
                                </tr>

2 个答案:

答案 0 :(得分:1)

两条评论。

首先。尽可能使用JSF组件。

其次。避免使用JSTL标记。如果您不必使用它,请删除c:forEach。将其替换为ui:repeath:dataTable等。

如果您无法直接使用h:selectOneRadio

,现在回答您的问题以获得解决方法

您需要做的是在Seam中使用@WebRemote,然后在表单提交时使用javascript,在UserHome组件中通过Ajax设置值。

有关如何使用远程处理的更多信息,请查看Seam文档中的章节5. Remoting

答案 1 :(得分:0)

您需要将值/列表指向SelectItem的ArrayList,这里将存储您选择的项目。