【发布时间】:2018-07-06 21:06:09
【问题描述】:
我正在使用 jquery datepicker,它似乎存在一些验证错误的问题。验证错误后,如果我从 datepicker 中选择一个日期,则验证消息不会消失。如果我第二次选择日期,它就会消失。
这里是重现这个的步骤;
1- 输入错误的日期格式。 2- 将显示无效的日期格式错误。 3- 现在从日期选择器中选择一个日期。 4- 步骤二中显示的错误信息仍然存在。
我对此进行了一些研究,并尝试了此链接上给出的解决方案,但没有运气。
jQuery datepicker validation message issue
这是我的代码;
$("#date").datepicker({
dateFormat: 'dd/mm/yy'
});
$('form').validate({
rules: {
date: {
required: true,
dateISO: true
}
},
messages: {
date: {
required: "Date required",
dateISO: "Invalid date. Must be formatted dd/mm/yy"
}
}
});
$.validator.addMethod('date',
function(value, element) {
if (this.optional(element)) {
return true;
}
var ok = true;
try {
$.datepicker.parseDate('dd/mm/yy', value);
} catch (err) {
ok = false;
}
return ok;
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.10.0/jquery.validate.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
<link href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" rel="stylesheet"/>
<form>
<input id="date" name="date" />
</form>
【问题讨论】:
-
如果 sn-p 不起作用,创建它有什么意义
-
不知道为什么它不能在 chrome 中工作,在 IE 和 firefox 中工作正常。我实际上发布了一个指向我的小提琴jsfiddle.net/m7wMe/16 的链接,但我认为管理员将其更改为 sn-p。
标签: javascript jquery validation jquery-ui datepicker