我试图提交一个表单与以下代码,但它不填充在bean中的字段:
//input above
<h:commandButton actionListener="#{transferenciaVagaBean.search()}" value="Search">
<f:ajax render="@form"/>
</h:commandButton>
但是,如果我将组件更改为:
//input above
<a4j:commandButton actionListener="#{transferenciaVagaBean.search()}"
value="Search"
render="@form" />
它工作完美。我用h:commandButton做错了什么吗?
我试图从actionListener
到action
,因为我之前有这个问题,但它没有工作的方式与h:commandButton
。
默认情况下,f:ajax
将只执行@this
,这意味着它将只提交操作按钮,而不是表单中输入的任何值。试试这个:
...
<f:ajax execute='@form' render='@form' />
...
参见javadoc的execute一节:
…如果指定了文字,则id必须用空格分隔。任何一种关键字"@this","@form","@all","@none"可以在id中指定列表。如果未指定,则采用默认值"@this"。为例如,@this clientIdOne clientIdTwo.