允许今天';s日期和未来日期,与今天和#x27;javascript中的日期

允许今天';s日期和未来日期,与今天和#x27;javascript中的日期,javascript,jquery,datetime,validation,Javascript,Jquery,Datetime,Validation,我有一个报名表,我可以允许今天和未来的日期,但不能允许昨天和前几天。我需要在客户端使用java脚本进行验证 var futuredate = new Date($("#Deadline").val()); var today = new Date(); 这给了我时间和日期2013年11月4日星期一00:00:00 GMT+0530(印度标准时间) 我只想在用户输入今天的日期时比较日期 输入的日期为:2013年4月5日星期五00:00:00 GMT+0530(印度标准时间) 新日期的当前日期()

我有一个报名表,我可以允许今天和未来的日期,但不能允许昨天和前几天。我需要在客户端使用java脚本进行验证

var futuredate = new Date($("#Deadline").val());
var today = new Date();
这给了我时间和日期<代码>2013年11月4日星期一00:00:00 GMT+0530(印度标准时间) 我只想在用户输入今天的日期时比较日期 输入的日期为:
2013年4月5日星期五00:00:00 GMT+0530(印度标准时间)
新日期的当前日期():
2013年4月5日星期五16:53:00 GMT+0530(印度标准时间)

我尝试使用
sethours()
它在当前月份运行良好,但当它转换数字中的日期时,当输入的日期是上一个月或之前的任何一个月时,就会产生问题。 例如:输入的日期是2013年3月23日,今天是2013年4月5日,它认为输入的日期有效

var futuredate = new Date($("#Deadline").val()).setHours(0, 0, 0, 0);
var today = new Date().setHours(0, 0, 0, 0);
if (futuredate >= today) {
   alert("Valid");
}
else if (futuredate < today) {
   alert("InValid");
}
var futuredate=新日期($(“#截止日期”).val()).setHours(0,0,0,0);
var today=new Date().setHours(0,0,0,0);
如果(未来日期>=今天){
警报(“有效”);
}
否则如果(未来日期<今天){
警报(“无效”);
}

尝试以下操作,在使用
setHours()
之前,它使用一个小函数将日期字符串解析为日期对象。如果字符串的格式为dd/mm/yyyy或dd-mm-yyyy,则此选项有效

var futuredate = parseDate(input).setHours(0, 0, 0, 0);
var today = new Date().setHours(0, 0, 0, 0);
if (futuredate >= today) {
   alert("Valid");
}
else if (futuredate < today) {
   alert("InValid");
}

//function to return a date object from the date string passed to it
function parseDate(input) {
    var parts = input.match(/(\d+)/g);
    return new Date(parts[2], (parts[1]-1), parts[0]);
}
var futuredate=parseDate(输入).setHours(0,0,0,0);
var today=new Date().setHours(0,0,0,0);
如果(未来日期>=今天){
警报(“有效”);
}
否则如果(未来日期<今天){
警报(“无效”);
}
//函数从传递给它的日期字符串返回日期对象
函数解析日期(输入){
var parts=input.match(/(\d+)/g);
返回新日期(部分[2],(部分[1]-1),部分[0]);
}

只需拆分日期并设置日期函数概念。使用这种方法,我们可以轻松地比较日期

 var a =futuredate.split('/');
 var b =today.split('/');
 var date1 = new Date(a[2],a[1],a[0]);
 var date2 = new Date(b[2],b[1],b[0]);

if (date1 >= date2) {
   alert("Valid");
}
else if (date1 < date2) {
   alert("InValid");
}
var a=futuredate.split('/');
var b=今天.分割('/');
var date1=新日期(a[2],a[1],a[0]);
var date2=新日期(b[2],b[1],b[0]);
如果(日期1>=日期2){
警报(“有效”);
}
否则如果(日期1<日期2){
警报(“无效”);
}

关于比较日期有很多答案,请看这里-我想比较没有时间的日期。。。我已经在堆栈上搜索答案了。。。他们没有解决我的问题…@bluesky您的输入日期是多少,请提供一个示例。@bluesky我已经添加了一个答案,请给出答案。这与插件无关。在标记问题时请更加小心。编辑。谢谢