当在组合(rich:选择)中选择项目时,我正在尝试调用方法bean,如下所示:
<rich:select id="combo"
value="#{bean.code}"
valueChangeListener="#{bean.productChanged}"
immediate="true" required="true">
<a4j:ajax event="change" render="callConflict"
oncomplete="javascript:showConflict();" />
<f:selectItems
value="#{bean.products}" />
<f:attribute name="attributeName"
value="#{bean.attribute}" />
</rich:select>
但是这段代码,bean 中的方法只在项目更改时调用 以及当组合失去焦点时
在更改产品后,应该在 bean 上调用该方法而不必等待组合失去焦点吗?
谢谢。
有几种方法可以解决您的问题。其中之一是从组件中删除焦点
onlistclick = "x.blur()"
或
onlistclick = "window.blur()"
是的,这可以工作,但我想这不是最好的解决方案。
另一种(更好的)方法是使用:
<a4j:ajax event="selectitem" render="xxx"/>
请记住:事件标记可能区分大小写。对我来说,事件="选择项"不起作用(只有"选择项")。