0

我正在尝试使用以下代码提交表单,但它没有填充 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 做错了吗?

我试图从 to 更改为actionListeneraction因为我之前遇到过这个问题,但它对h:commandButton.

4

1 回答 1

2

默认情况下,f:ajax将只执行@this意味着它只会提交操作按钮,而不是表单中的任何输入值。试试这个:

...
<f:ajax execute='@form' render='@form' />
...

请参阅javadoc的执行部分:

...如果指定了文字,则 ID 必须以空格分隔。可以在 id 列表中指定任何关键字“@this”、“@form”、“@all”、“@none”。如果未指定,则假定默认值为“@this”。例如,@this clientIdOne clientIdTwo。

于 2013-03-27T22:37:48.973 回答