我想将今天的日期设置为jQuery datepicker的maxdate,以防止用户选择超过今天日期的日期
答案 0 :(得分:131)
$(".datepicker").datepicker({maxDate: '0'});
这会将maxDate设置为当前日期(即今天)的+0天。参见:
答案 1 :(得分:13)
http://api.jqueryui.com/datepicker/#option-maxDate
$( ".selector" ).datepicker( "option", "maxDate", '+0m +0w' );
答案 2 :(得分:4)
如果您使用的是bootstrap 3日期时间选择器,请尝试以下操作:
$('.selector').datetimepicker({ maxDate: $.now() });
答案 3 :(得分:1)
对于那些不想使用datepicker方法的人
var alldatepicker= $("[class$=hasDatepicker]");
alldatepicker.each(function(){
var value=$(this).val();
var today = new Date();
var dd = today.getDate();
var mm = today.getMonth()+1; //January is 0!
var yyyy = today.getFullYear();
if(dd<10) {
dd='0'+dd
}
if(mm<10) {
mm='0'+mm
}
today = mm+'/'+dd+'/'+yyyy;
if(value!=''){
if(value>today){
alert("Date cannot be greater than current date");
}
}
});
答案 4 :(得分:0)
在最新版本中,以下功能正常工作:
$('.selector').datetimepicker({
maxDate: new Date()
});
maxDate
接受Date对象作为参数。
文档中包含以下内容:
支持多种类型:
日期:包含最小日期的日期对象。
数量:从今天开始的天数。例如2代表从今天起两天,-1代表昨天。
字符串:采用dateFormat选项定义的格式的字符串,或 相对日期。相对日期必须包含值和期间对; 有效期限为“ y”代表几年,“ m”代表几个月,“ w”代表几周,以及 “ d”天。例如,“ + 1m + 7d”代表一个月零七个 从今天开始。