2012-03-06 55 views
1

正如我在試驗JSF 2.0時,我遇到了類似這樣的場景。在通過第一個文本字段的ajax進行數據驗證後禁用第二個文本字段

我有兩個文本字段 - 基於第一場的輸入使用

<f:ajax ... /> 

響應回來後,我重新繪製第二個文本字段的Ajax調用燃煤..但我想禁用第二個文本字段基於某個服務器端驗證的第一個字段值。

我不想使用基於bean驗證後在bean中設置的第三個屬性的樣式設置禁用。

是否有任何替代方式..預先

回答

4

綁定所述第一輸入組件的視圖通過binding屬性

感謝和在第二輸入字段的disabled屬性使用UIInput#isValid()。如果給定輸入組件上的驗證失敗,它將返回false

<h:inputText binding="#{input1}" value="#{bean.input1}"> 
    <f:validator validatorId="yourValidator" /> 
    <f:ajax event="blur" render="input2" /> 
</h:inputText> 
<h:inputText id="input2" value="#{bean.input2}" disabled="#{!input1.valid}" /> 
相關問題