2016-08-03 3 views
0

まずはPrimefacesを使用しています。 私は、inputText、selectOneMenu、selectCheckboxMenuなどのフィールドを持つダイアログを持っています。しかし、私はまた、私はこのような何か持っている分野いる:他のダイアログで選択した後にoutputTextの値を更新します。

<p:row> 
    <p:column styleClass="addLabelColumn addLabel"> 
     <p:outputLabel value="Pracownik: " /> 
    </p:column> 
    <p:column styleClass="addLabel addEmployeeLabelColumn"> 
     <h:outputText id="employeeValue" value="#{accountModel.account.employee}" /> 
    </p:column> 
    <p:column> 
     <p:commandButton type="button" id="employee" value="Wybierz" 
         onclick="PF('chooseEmployeeDlg').show()"/> 
    </p:column> 
</p:row> 

コマンドボタンは、ユーザーが従業員を持つ行と、その後のoutputTextがselectedObjectの文字列表現で更新されるように、[OK]をクリックし選択することができたDataTableとのダイアログを開きます。

<p:commandButton value="OK!" onclick="PF('chooseEmployeeDlg').hide()" update="accountAssignGrid" /> 

accountAssignGridは、すべてのフィールドが配置されている周囲のパネルグリッドです。 私の問題は、すべてのフィールドの検証が成功した場合にのみ、outputTextが更新されることです。有効なフィールドに何か正しいものを書き込まないと、employeeValueのoutputTextは更新されません。私は、accountModel.account.employeeが変更されたとき、またはEmployee datatableを持つダイアログでユーザーが[OK]ボタンをクリックしたときに常にoutputTextを更新したいと思います。

最終的な質問は フォーム全体を送信して検証することなくoutputTextのみを更新するにはどうすればよいですか?

+1

ここでプロセス属性について読む:http://stackoverflow.com/questions/25339056/understanding-process-and-update-attributes-of-primefaces – Kukeltje

答えて

0

この質問に対する答えを探している人は誰ですか:この特定のケースでは、解決策はdatatableを持つダイアログを別の形式にすることでした。

+1

全く必要ありません(私の意見を読んでください)。このようにすれば、更新属性をに更新する必要があります。質問を改善してください(フォームを表示してください)、あなたは答えます(「修正されたコード」を表示してください)。 – Kukeltje

関連する問題