2011-04-28 70 views
1

我有一個JSF頁面,其元素的屬性爲required=truedisabled,我想觸發該特定元素的驗證。我所做的是使用<h:commandButton>在onclick事件中提交它,我刪除了disabled屬性,但在頁面呈現後驗證錯誤不顯示。有人知道爲什麼JSF生命週期(驗證)

<h:inputText id="myInput" required="true" disabled="disabled" /> 
<h:commandButton id="saveButton" action="#{myBean.saveDetail}"> 

<script type="text/javascript"> 
    document.getElementById('saveButton').onclick = function() { 
    document.getElementById('myInput').removeAttribute('disabled'); 
    } 
</script> 
+0

inputtext是否包含任何值? – 2011-04-28 06:01:33

回答

1

有幾個問題在這裏:

1.禁用屬性應該是在inputText的布爾值。

2.Disabled屬性是指:

標誌表明該元素必須 從未接收焦點或被包括在 隨後提交。

所以沒有驗證器會運行它。

3.您不能在客戶端更改h:inputText的禁用屬性,如果可以的話,這將是JSF中的安全問題。