【发布时间】:2012-02-09 13:59:46
【问题描述】:
我在实现一种机制时遇到问题,该机制使用 PrimeFaces 检查 JSF 表单中的强制输入字段是否在提交表单之前由用户填写。
我在 inputTexts 中使用了 required="true" 机制,用于在提交之前检查和触发自定义消息,以提示用户在必填字段中输入一些值,例如:
<p:inputText id="exp" required="true" requiredMessage="#{lang.dailyCurrencyValues_exp_req_txt}" value="#{marketDataDefinitionProcesses.currencyType.explanation}"/>
如果用户成功完成提交并留在同一页面,我的老板要求我重置页面。为了实现这一点,我在提交按钮上使用了 oncomplete="document.myForm.reset();" ,它成功地重置了表单和表单中的所有字段。
但是,如果用户没有输入所有必填字段并按下提交按钮,则表单将给出 requiredMessage 中指定的消息并重置表单和中的所有元素它。如果提交失败,我想防止这种情况重置值。我尝试实现一个 JavaScript 函数,该函数试图防止在未填写必填字段时重置表单。然而,我再次面临一个关于在我的表单中检索 元素值的问题。
<p:calendar id="dateValueId" value="#{marketDataDefinitionProcesses.currencyType.dateValue}" pattern="dd.MM.yyyy" required="true" requiredMessage="#{lang.dailyCurrencyValues_dateValueId_req_txt}"/>
我没有成功通过 JavaScript 检索日历元素值。
现在,我正在等待您的意见来解决这个问题。我认为,有关使用 JavaScript 或任何 JSF/PrimeFaces 元素检索有关 required="true" 字段是否已填充的信息的解决方案是选项。
此致……
法鲁克
【问题讨论】:
标签: java javascript jsf primefaces