如果是未来的有效日期,我需要验证日期。在使用带有dateITA规则的Jquery验证插件时,使用日期格式dd/mm/yyyy
以表格I输入日期。我添加了以下验证方法
$.validator.methods.futuredocexp = function( value, element ) {
var now = new Date();
var myDate = new Date(value);
return this.optional(element) || myDate > now;
};
只有日期采用dd-mm-yyyy等美国格式时才有效 我怎样才能使它适用于dd / mm / yyyy?
答案 0 :(得分:0)
将dateString拆分为\
,然后加入-
即可。这是一个例子:
var dateStringwithFwdSlash1 = "21/04/2050"; // dd/mm/yyyy format
var dateStringwithFwdSlash2 = "21/04/2005"; // dd/mm/yyyy format
Array.prototype.swapItems = function(a, b){
this[a] = this.splice(b, 1, this[a])[0];
return this;
}
function isItFutureDate(dateStr){
var d = new Date(dateStr.split("/").swapItems(0,1).join("-"));
var now = new Date();
console.log("Input dateString was: "+dateStr+" \t Date Object is: " +d);
console.log('Is input dateStr a future date ??'); // .getTime() returns milliseconds since 1 Jan 1970
console.log((d.getTime()-now.getTime()) > 0 );
}
isItFutureDate(dateStringwithFwdSlash1);
isItFutureDate(dateStringwithFwdSlash2);