可以a4j:支持在事件属性中有多个值吗?

时间:2011-07-29 15:31:12

标签: richfaces ajax4jsf

a4j:支持在事件属性中有多个值吗?

<a:support event="onchange, onsubmit" ajaxSingle="true"
action="#{customerSession.userCheckQuantity(_cartItem, index)}"
reRender="shoppingCartAjax, orderTotalAjax"></a:support>

2 个答案:

答案 0 :(得分:4)

不,你不能。在event属性的TLD中,它说:

  

父级的JavaScript事件属性(onclick,onchange等)的名称   组件,我们将为其构建AJAX提交代码

有一个JIRA请求此功能,但它仍处于打开状态。因为它适用于RF3,我猜这不会改变。

然而,a4j:ajax {相当于RF4} another request支持同样的事情。因为它适用于RF4,我猜它更有可能实现。

作为替代方案,您可以为一个组件使用多个a4j:support标记:

<h:selectOneMenu id="planets" value="#{planetsMoons.currentPlanet}" valueChangeListener="#{planetsMoons.planetChanged}">
    <f:selectItems value="#{planetsMoons.planetsList}" />
    <a4j:support event="onchange" reRender="id1,id2" />
    <a4j:support event="onkeyup" reRender="id1,id3" />
</h:selectOneMenu>

答案 1 :(得分:0)

您可以使用actionparam,这是一个示例:

< a4j:commandButton ajaxSingle="true" value="Clean Up Form" reRender="name, job, out"  status="commonstatus">

                <a4j:actionparam name="n" value=""  assignTo="#{userBean.name}" />

                <a4j:actionparam name="j" value=""  assignTo="#{userBean.job}" />

< /a4j:commandButton>

类似于a4j:支持