Events 使用a4j:queue进行事件同步

Events 使用a4j:queue进行事件同步,events,jsf,richfaces,queue,ajax4jsf,Events,Jsf,Richfaces,Queue,Ajax4jsf,我在表单上有一个输入文本和一个按钮。我为输入文本处理事件onchange,为按钮处理事件onclick。如果用户更改文本,然后单击按钮,则会触发两个事件,有时会同时处理这些事件。我希望onclick在onchange之后处理已完成。为此,我使用并用标记事件,如下所示: <a4j:queue name="myQueue"/> ... <h:inputText id="dateFromText" value="#{flowScope.fileSearchCriteria.f

我在表单上有一个输入文本和一个按钮。
我为输入文本处理事件
onchange
,为按钮处理事件
onclick

如果用户更改文本,然后单击按钮,则会触发两个事件,有时会同时处理这些事件。
我希望
onclick
onchange
之后处理已完成。
为此,我使用
并用
标记事件,如下所示:

<a4j:queue name="myQueue"/>
    ...
<h:inputText id="dateFromText" value="#{flowScope.fileSearchCriteria.fromDateStr}">
          <a4j:support event="onchange" eventsQueue="myQueue" reRender="datePanel1" 
          actionListener="#{fileSearchCriteria.changeTextFromDate}"/>
</h:inputText>
    ....
<h:commandButton id="fileInSearch" action="fileInSearch"
        value="#{resourceBundle.searchIn}" type="submit">
        <a4j:support eventsQueue="myQueue" event="onclick"/>
</h:commandButton>
...

...
....
...

因此,
onclick
并不是每次都在
onchange

之后处理,
onclick

您每次应该有两个事件,onchange和onclick。但是,我建议切换到a4j:commadnButton,而不是使用内置a4j:support的h:commandButton

每次应该有两个事件,onchange和onclick。但是,我建议切换到a4j:commadnButton,而不是使用内置a4j:support的h:commandButton

我试过a4j:commandButton-没有效果。“每次两个事件”是什么意思?按照激活组件的顺序,将有两个事件。下面是一篇关于队列的好文章,可能会有所帮助:我尝试了a4j:commandButton——没有效果。“每次两个事件”是什么意思?按照激活组件的顺序,将有两个事件。下面是一篇关于队列的好文章,可能会有所帮助: