如何将三个单独的字段验证为一个日期
How to validate three separate fields as a date
我正在尝试验证一个分为三个字段(当然是年、月和日)的日期。我不能随心所欲地更改这些字段。我正在使用jQueryValidation插件(也不是我的选择)。我不知道如何将这三个字段作为一个字段进行验证。即使单独验证它们也足够了。
我的HTML如下。
<div class="date-field requiredField">
<div class="date-picker hasDatepicker" id="dp1412187717156" style="display: none;">...</div>
<input type="text" class="month" required="required" maxlength="2" placeholder="MM" title="Month" value="1">
/
<input type="text" class="day" required="required" maxlength="2" placeholder="DD" title="Day" value="1">
/
<input type="text" class="year" required="required" placeholder="YYYY" title="Year" value="1973">
<span class="date-pick-button"></span>
<span class="date-clear-button"></span>
</div>
我调用验证器如下:
$("#SignUp_Enrollment").validate({
focusInvalid : false,
rules: {
co_ssn: {
ssn: true
},
first_name: {
required: true
},
last_name: {
required: true
}
// some more rules
},
invalidHandler: function (form, validator) {
// style the invalid fields
},
submitHandler: function (form) {
form.submit();
}
});
我当然在验证其他字段,但这个插件并没有给我任何怜悯。我尝试过添加月份、日期和年份规则,但都无济于事。有什么建议吗?
报价OP:
"即使单独验证也足够了。"
您的代码已损坏,因为HTML标记中没有任何字段包含name
属性。唯一的name
是此插件运行所必需的。这就是它如何跟踪输入元素。
请参阅:http://jqueryvalidation.org/reference/#markup-建议
它没有显示在标记中,但所有相关的输入元素也必须包含在<form></form>
标记中。否则此插件将无法工作。
由于您已经将日期保存到隐藏字段中,因此也可以只验证隐藏字段。
<input type="hidden" name="myDate" />
使用ignore: []
选项激活隐藏字段的验证。
然后,只要此隐藏字段具有唯一的name
属性,就可以像对任何其他字段一样应用验证规则。
使用errorPlacement
回调可以精确地放置附加到隐藏字段的消息。
您可以将这三个字段合并为一个(hidden
输入),并验证此输入
var day, month, year;
day = $('.day').val();
month = $('.month').val();
year = $('.year').val();
$('.hidden-date-input').val([day, year, month].join('-'));
相关文章:
- 如何在Javascript中验证日期期间与其他日期期间的交叉
- 如何验证日期、月份和日期的3个独立输入字段;年使用jquery或javascript
- 使用MomentJs在Nodejs中验证日期
- 如何使用javascript将验证日期设置为不小于文本框中的开始日期
- 验证日期是否早于当前日期的日期
- 如何在 javascript 中验证整数是否为验证日期
- 通过 jQuery 验证日期字符串格式的最佳方法
- 如何验证日期必须从两个日期中不少于一年
- 验证日期输入 - 最小值和最大值
- jQuery(或javascript)验证日期范围
- 使用时刻验证日期时出现问题.js按格式
- 焦点将放在jquery中的验证日期选择器字段上
- 什么是用于验证日期格式(如月/年)的正则表达式
- 如何使用 HTML 验证日期范围
- 日期验证日期选取器
- 使用提交验证日期输入字段
- 如何在 JavaScript 中使用格式“MMM DD, YYYY h:mm:ss A”验证日期
- 正在验证日期字段's使用angularJS
- 如何在日期选择器中验证日期时间
- new Date转换无效日期,可以'无法正确验证日期