这是我的示例支持 bean。
@ManagedBean
@SessionScoped
public class Sample {
private String dateText;
public Sample(){
dateText = (new Date()).toString();
}
public String updateDate(){
setDateText((new Date()).toString());
return null;
}
public String getDateText() {
return dateText;
}
public void setDateText(String dateText) {
this.dateText = dateText;
}
}
情景 01
<h:head></h:head>
<h:body>
<h:form>
<h:inputText id="txtFirst" value="#{sample.dateText}"/>
<h:inputText id="txtSecond" value="#{sample.dateText}"/>
<h:commandButton action="#{sample.updateDate}"/>
</h:form>
</h:body>
情景 02
<h:head></h:head>
<h:body>
<h:form>
<h:inputText id="txtFirst" value="#{sample.dateText}"/>
<p:inputText id="txtSecond" value="#{sample.dateText}"/>
<h:commandButton action="#{sample.updateDate}"/>
</h:form>
</h:body>
情景 03
<h:head></h:head>
<h:body>
<h:form>
<h:inputText id="txtFirst" value="#{sample.dateText}"/>
<p:inputText id="txtSecond" value="#{sample.dateText}"/>
<p:commandButton action="#{sample.updateDate}"/>
</h:form>
</h:body>
情景 04
<h:head></h:head>
<h:body>
<h:form>
<h:inputText id="txtFirst" value="#{sample.dateText}"/>
<p:inputText id="txtSecond" value="#{sample.dateText}"/>
<p:commandButton action="#{sample.updateDate}" update="@form"/>
</h:form>
</h:body>
当我点击commandButton
,
场景 01:工作正常。我可以从两个字段中看到新的日期值,inputText
而无需手动刷新页面。
场景02:刷新页面。看不到任何 ajax 行为。新的价值观在那里。
场景 03:什么都没有发生。没有刷新。没有值变化。要查看值,我必须手动刷新页面。
场景 04 : 像场景 01一样工作
请有人给我一些关于这些组件在这里发生的事情的解释。我用过ICEfaces
,但我没有看到这样的东西。
谢谢!