【发布时间】:2013-01-13 03:13:47
【问题描述】:
我正在使用 JSf2.1 开发一个 Web 应用程序。 我正在按照教程编写一个 selectOneMenu(下拉列表框)。
我需要有 2 个下拉框(A 和 B),但本质上调用相同的 ajax 侦听器函数,该函数将使用选项 A 和 B 进行一些计算...
那么,我们可以像这样嵌套 selectOneMenu 吗?
<h:form id= "ourForm">
<h:selectOneMenu value= "#{bean.valA}"...>
<f:selectItems ... />
<h:selectOneMenu value= "#{bean.valB}"...>
<f:selectItems ... />
<f:ajax listener="#{bean.listener}" render="ourForm"/>
</h:selectOneMenu>
</h:selectOneMenu>
</h:form>
还有bean监听方法:
public void Listener{
//use valA and valB
}
好吧,我尝试执行上述操作,但页面显示警告:
表单组件需要在其祖先中有一个 UIForm。建议附上必要的 withing
我通过在每个 selectOneMenu 上调用相同的侦听器尝试不使用嵌套,但我得到相同的随机行为..即:当我选择 A 的 elem 1 保留 B 上的“prev”选项时,框 B 随机更新其选择为默认值反之亦然!
请指教。
【问题讨论】:
标签: ajax jsf-2 selectonemenu