首先,我使用的是 Primefaces。我有一个对话框,其中包含 inputText、selectOneMenu、selectCheckboxMenu 等字段。但我也有一个领域,我有这样的东西:
<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>
CommandButton 打开带有数据表的对话框,用户可以在其中选择带有 Employee 的行,然后单击 OK,以便使用 selectedObject 字符串表示来更新 outputText。
<p:commandButton value="OK!" onclick="PF('chooseEmployeeDlg').hide()" update="accountAssignGrid" />
accountAssignGrid 是周围的 panelGrid,所有字段都位于其中。我的问题是 outputText 仅在所有字段验证成功时才会更新。如果我没有在经过验证的字段中写入正确的内容,则不会更新 employeeValue outputText。我希望始终在 accountModel.account.employee 更改或用户单击带有 Employee 数据表的对话框中的 OK 按钮时更新 outputText。
所以我的最后一个问题是:如何只更新 outputText 而不提交和验证整个表单?