在我之前question的类似路线上,我还有一个问题:
我们正在使用普通的JSF,我试过一个选择列表我认为普通的jsf不会携带它,除非我使用richfaces。
所以我们尝试使用多选列表和带有javascript函数的按钮来实现我们自己的选项列表。以下是示例代码:
<td width="100">
<h:selectManyListbox id="Groups" name="Groups" size="9" style="width: 125px" >
<f:selectItems value="#{notificationBean.groupsFromDB}"/>
</h:selectManyListbox>
</td>
<td align="center" valign="middle" width="80"><input
type="button" value="Add " class="btn_empty"
onclick="SelectMoveRows(document.forms['searchform'].Groups,document.forms['searchform'].GroupCodes)" /><br />
<br /> <input type="button" value="Remove" class="btn_empty"
onclick="SelectMoveRows(document.forms['searchform'].GroupCodes,document.forms['searchform'].Groups)" />
</td>
<td width="100">
<h:selectManyListbox id="GroupCodes" name="GroupCodes" size="9" style="width: 125px" value="#{notificationBean.selectedGroups}">
</h:selectManyListbox>
</td>
首先让我知道用法是正确的。在这里,我无法使用document.forms方法访问组或组代码。因此,迭代不会从一个盒子移动到另一个盒子。
请告诉我如何在document.forms中引用多选框 我试过以下:
document.forms['searchform'].Groups
document.forms[0].searchform\\\\:Groups
document.searchform.Groups
先谢谢,
迪帕克
回答McDowell的评论:
我在该链接中尝试了该方法......它无法正常工作......
还有一件事,我不确定我是否可以直接在我的项目中使用这个命名空间......它是免费的/开源吗?这是一个公司项目,所以要求......
没有使用此命名空间还有其他方法......
我包含了它指定的xmlns:
<ui:composition xmlns="w3.org/1999/xhtml"; xmlns:ui="java.sun.com/jsf/facelets"; xmlns:c="java.sun.com/jstl/core"; xmlns:h="java.sun.com/jsf/html"; xmlns:f="java.sun.com/jsf/core"; xmlns:id="illegalargumentexception.googlecode.com/clientId"; version="2.0" template="/xhtml/masterLayout.xhtml">
它说例外:
javax.el.ELException: Function 'id:cid' not found
at org.apache.el.lang.ExpressionBuilder.visit(ExpressionBuilder.java:210)
at org.apache.el.parser.SimpleNode.accept(SimpleNode.java:147)
at org.apache.el.lang.ExpressionBuilder.prepare(ExpressionBuilder.java:167)
at org.apache.el.lang.ExpressionBuilder.build(ExpressionBuilder.java:185)