Ajax <;a4j:commandButton>;不´;不要开始行动

Ajax <;a4j:commandButton>;不´;不要开始行动,ajax,jsf,jsf-2,Ajax,Jsf,Jsf 2,我需要使用a4j:commandButton而不是h:commandButton,因为它的reRender选项 当我使用h:commandButton时,它可以正常工作(但不需要重新加载): 同样的,使用不会(即使使用我们的reRender选项也不会启动操作): 我也试过: <h:commandButton id="save" action="#{bean.save}" value="#{conf.buttonSave}"> <a4j:ajax event="clic

我需要使用
a4j:commandButton
而不是
h:commandButton
,因为它的
reRender
选项

当我使用
h:commandButton
时,它可以正常工作(但不需要重新加载):


同样的,使用不会(即使使用我们的reRender选项也不会启动操作):


我也试过:

<h:commandButton id="save" action="#{bean.save}" value="#{conf.buttonSave}">
 <a4j:ajax event="click" reRender="table" />
</h:commandButton>

但是,如果我添加
a4j:ajax
a4j:commandButton
相同的问题,则不会启动操作


你能帮我吗

您为这个JSF2.0添加了标签。所以您使用的是JSF2.0。只需使用JSF2.0内置的
标记

<h:commandButton id="save" action="#{bean.save}" value="#{conf.buttonSave}">
    <f:ajax render="table" />
</h:commandButton>


请注意,
必须与上述方式相同。否则您需要
render=“:table”
。还要注意的是,模板中必须有
而不是
,才能自动包含所有必要的JavaScripts。

对于
a4j:commandButton
没有
reRender
属性。我不熟悉Richfaces,但是如果您省略了
重新渲染器
,那么预期的行为是什么?该按钮的行为是否类似于非ajax按钮?它应该基于datalist中的chenges重新呈现datatable。。但问题是a4j:commandButton即使没有reRender选项也不会启动操作。好吧,我想你误解了我的评论。我的意思是,在您的示例中没有
reRender
属性。如果使用该属性会发生什么?啊哈,因为主要问题是它不会启动操作,所以重新渲染是次要问题。。。我已经编辑了我的帖子,如果ajax出现问题,如果单击浏览器中的按钮,通常会出现javascript错误。检查java控制台(开发工具)。
<h:commandButton id="save" action="#{bean.save}" value="#{conf.buttonSave}">
 <a4j:ajax event="click" reRender="table" />
</h:commandButton>
<h:commandButton id="save" action="#{bean.save}" value="#{conf.buttonSave}">
    <f:ajax render="table" />
</h:commandButton>