2012-03-05 26 views
3

我正在使用JSF 2.0开发包含众多字段的相当大而复杂的页面。这将是在页面的按钮退出命令按钮,并且当用户选择退出选项时,我需要检测用户是否在页面的某个字段中输入了任何值。如何在JSF 2.0页面中检测字段值更改

我正在使用支持bean中的每个字段值的空检查来做到这一点,但这是一个非常繁琐和重复的工作。我想知道有没有什么聪明的解决方案?任何帮助将不胜感激。

在此先感谢。

+0

您是否在寻找一个客户端解决方案或服务器端? – Daniel 2012-03-05 09:20:45

回答

1

您的字段值可能与后台bean的属性相关联。当值改变时,调用者被调用。在setter内部,如果值实际发生更改,可以将bean的boolean字段设置为true。

public void setPropertyX(Type newValue) { 
    if(!newValue.equals(this.X)) { 
     this.X = newValue; 
     this.fieldChanged = true; 
    } 
} 

为了这个工作,你的支持豆应至少在@ViewScope

8

对于该valueChangeListener属性是打算使用。

<h:inputText ... valueChangeListener="#{bean.changed}" /> 

public void changed(ValueChangeEvent event) { 
    this.changed = true; 
} 
相关问题