我有一个带有<h:inputText>
. 我想将值设置<h:inputText>
为更改值时绑定的值。
豆:
@ManagedBean
@SessionScope
public class MyBean {
private String in;
//getter and setter
}
看法:
<h:inputText value="#{myBean.in}" />
我该如何使用<f:ajax>
它?
我有一个带有<h:inputText>
. 我想将值设置<h:inputText>
为更改值时绑定的值。
豆:
@ManagedBean
@SessionScope
public class MyBean {
private String in;
//getter and setter
}
看法:
<h:inputText value="#{myBean.in}" />
我该如何使用<f:ajax>
它?
只需将标签嵌套在<f:ajax>
标签内<h:inputText>
即可。
<h:inputText value="#{myBean.in}">
<f:ajax />
</h:inputText>
它会在 HTML DOM 事件发生时提交该值change
(即当字段被编辑然后模糊时)。
该event
属性已默认为valueChange
,因此将其省略。它的execute
属性已经默认为@this
,所以它被省略了。如果您想在完成时更新其他组件,请设置render
属性。例如
<h:inputText value="#{myBean.in}">
<f:ajax render="msg" />
</h:inputText>
<h:message id="msg" />
如果要在成功设置后调用侦听器,请设置listener
属性:
<h:inputText value="#{myBean.in}">
<f:ajax listener="#{myBean.changeIn}" />
</h:inputText>
public void changeIn() {
System.out.println("in has been changed to " + in);
}