Oma*_*mar 16 javascript validation jquery date datepicker
我有datepicker,但我找不到验证用户条目是否为日期的方法以及是否遵循所需格式(格式:yyyy-mm-dd)
这是我的日期选择器:
$("input[name='date']").datepicker({ dateFormat: 'yy-mm-dd', changeMonth: true, changeYear: true, numberOfMonths: 3, showButtonPanel: true});
Run Code Online (Sandbox Code Playgroud)
我查看了这个解决方案," 如何验证datepicker以禁止/拒绝某些日期? ".它看起来很简单,但它只检查它是否是一个周末.它没有检查用户输入的日期,随机数或拼写错误(1231 .... 30-30-2011 ... 30/30/2011 ... 212-565-565 ......等) .
请摆弄我的小提琴:http://jsfiddle.net/MDa4A/
附加信息(11-10-2011):(
尝试这些jsFiddles并键入0-0-0或0/0/0)
我用你的答案提出了一个解决方案.当我使用格式"yy-mm-dd"时它可以工作:http://jsfiddle.net/LyEvQ/
但是当我使用不同的格式(Ej.:"mm/dd/yy")时它完全没用:http://jsfiddle.net/LyEvQ/1/
我需要两个都工作.你能帮忙吗?
Asm*_*mor 34
if (Date.parse("some string")) {
//Valid date
} else {
//Not a valid date
}
Run Code Online (Sandbox Code Playgroud)
Jam*_*son 10
这样的事情应该有效:
jQuery.validator.addMethod("customDateValidator",
function(value, element) {
try { jQuery.datepicker.parseDate("mm/dd/yyyy", value); return true; }
catch(e) {
return false;
}
},
"Please enter a valid date"
);
$("input[name='date']").rules("add", { customDateValidator:true });
Run Code Online (Sandbox Code Playgroud)
使用该Date.parse()
方法检查日期是否有效:
var timestamp = Date.parse($("input[name='date']").val())
if (isNaN(timestamp) == false) {
var d = new Date(timestamp);
}
Run Code Online (Sandbox Code Playgroud)