【发布时间】:2012-09-12 12:36:32
【问题描述】:
我使用带有日期选择器的 struts2 表单:
<s:form action="%{#parameters.myAction}" namespace="/" method="post" name="myForm" enctype="multipart/form-data" focusElement="dealTitleId" validate="true">
...
<sj:datepicker name="dealDisplayEnd" required="true" key="dealDisplayEnd-label" displayFormat="dd-mm-yy" readonly="true" minDate="0"/>
请注意启用客户端验证的validate="true" 选项(我需要此选项以防止在发生某些错误时丢失有关文件上传的其他一些信息)。
然后还为它创建了 XML:
<field name="dealDisplayEnd">
<field-validator type="required">
<message key="error.dealDisplayEnd.empty"/>
</field-validator>
</field>
一切正常,只是错误重复了两次:
查看网页源码,看到验证脚本生成了两次:
// field name: dealDisplayEnd
// validator name: required
if (form.elements['dealDisplayEnd']) {
field = form.elements['dealDisplayEnd'];
var error = "Deal display end date must be provided!";
if (field.value == "") {
addError(field, error);
errors = true;
}
}
// field name: dealDisplayEnd
// validator name: required
if (form.elements['dealDisplayEnd']) {
field = form.elements['dealDisplayEnd'];
var error = "Deal display end date must be provided!";
if (field.value == "") {
addError(field, error);
errors = true;
}
}
这是 struts2 的错误吗?还是我做错了什么?是因为我正在使用 datepicker 和客户端验证吗?我正在使用 struts2-core-2.3.4.jar 和 struts2-jquery-plugin-3.3.3.jar。 有没有简单的方法可以打补丁(我找不到生成的地方)?
谢谢。
【问题讨论】:
标签: jquery validation struts2 datepicker