2017-08-16 216 views
1

消息的在場組件我打算驗證字段usernameTxt在形式上與下面引導,具有參考BalusC answerAleksei Loginov answer條件呈現來自特定對象

<div class="form-group"> 
       <label class="control-label col-sm-2" for="usernameTxt">Fullname(*):</label> 
       <div class="col-sm-10"> 
        <h:inputText type="text" class="form-control" id="usernameTxt" 
         a:placeholder="Enter your name" required="true" 
         requiredMessage="Fullname is required" 
         value="#{data.personalInformation.username}"></h:inputText> 
        <h:panelGroup layout="block" rendered="#{not empty facesContext.getMessageList('usernameTxt')}" class="alert alert-danger"> 
         <h:message for="usernameTxt"></h:message> 
        </h:panelGroup> 
       </div> 
      </div> 

的願望是,如果輸入文本爲空,則它將使塊<h:panelGroup>,結果應該是像 enter image description here

(即照片是當我除去在的not條件財產)。我無法使條件呈現的塊正確。渲染條件中是否有任何語法,或者我在這裏丟失了什麼?

+0

請仔細閱讀本:https://stackoverflow.com/questions/14790014/ajax-update-render-does -not功上-A-組件,其-已渲染屬性 – Kukeltje

回答

1

問題解決了。

我花了一整天的時間來找出實際usernameTxt ID頁面上已經呈現,它不是像我想象的

enter image description here

所以我必須要改變的條件回

<h:panelGroup layout="block" 
         rendered="#{not empty facesContext.getMessageList('form:j_id_9:useridTxt')}" 
         class="alert alert-danger"> 
         <h:message for="useridTxt"></h:message> 
        </h:panelGroup> 

,它解決了我的問題