您好我正在尝试编写一个JavaScript函数,只允许使用日历进行日后选择。
我很困惑。我想比较用户的输入和当前日期然后传回一个真或假的返回,然后会出现错误信息。
这是我的if语句代码:
if (this.element.find('#visitdate').length > 0)
{
var check = this.element.find('#visitdate');
var today = new Date().getTime();
if (!check.text(today??) < 0)
{
_errMsg = "Please enter a future date";
return false;
}
else
{
return true;
}
}
任何人都可以带领我走向正确的方向。
答案 0 :(得分:1)
如果您使用jquery ui,则可以设置参数minDate
,因此只允许将来的日期和当天:
$(function() {
$( "#visitdate" ).datepicker({ minDate: 0 });
});
示例:http://jsfiddle.net/lparcerisa/Lwpyr09k/2/
修改:如果您不允许这样做,您可以检查这样的日期(如果您希望标准输入):
var check = Date.parse($('#visitdate').val());
var today = new Date().getTime();
if (check < today) { ... }
或者这个,例如使用日期d / m / Y:
var dateParts = $('#visitdate').val().split('/');
var check = new Date(dateParts[2], dateParts[1], dateParts[0], 0,0,0,0).getTime();
var today = new Date().getTime();
if (check < today) { ... }
答案 1 :(得分:0)
过滤文本值,如下所示:
if (!check.text() == today)