Jquery plugins datepicker JQuery验证和格式

Jquery plugins datepicker JQuery验证和格式,jquery-plugins,Jquery Plugins,我在Jquery中使用下面的datepicker将日期显示格式设置为dd/mm/yy格式,并且我希望用户不要选择将来的日期。一次只能使用一种方式 <script type="text/javascript" language ="javascript" > $(function () { var date = new Date(); var currentDate = date.getDate()

我在Jquery中使用下面的datepicker将日期显示格式设置为dd/mm/yy格式,并且我希望用户不要选择将来的日期。一次只能使用一种方式

<script type="text/javascript" language ="javascript" >
            $(function () {
                var date = new Date();
                var currentDate = date.getDate();
                var currentMonth = date.getMonth();
                var currentYear = date.getFullYear();
               $(".datepicker").datepicker({ dateFormat: 'dd/mm/yy' });
                $(".datepicker").datepicker({ maxDate: new Date(currentYear, currentMonth, currentDate) });

            });
</script>

$(函数(){
变量日期=新日期();
var currentDate=date.getDate();
var currentMonth=date.getMonth();
var currentYear=date.getFullYear();
$(“.datepicker”).datepicker({dateFormat:'dd/mm/yy'});
$(“.datepicker”).datepicker({maxDate:新日期(currentYear,currentMonth,currentDate)});
});
如何使日期格式和禁用未来日期同时工作。我缺少一点,我不知道如何将这两个验证或需求结合在一起

有什么答案吗


谢谢。

我对我的代码有一个类似的要求,并且有一个雇用日期。我是这样做的:

$('#hireDate').datepicker({
    dateFormat: 'dd/mm/yy',
    maxDate: new Date(currentYear, currentMonth, currentDay)
});

用户仍然可以手动输入未来的日期,并绕过日期选择器。我们在生产系统中遇到了这个问题

如果要使用验证插件另外验证日期,请尝试以下操作:

/**
 * Requires Datepicker and Validator
 *
 * Params: 
 * 0...dateformat. see datepicker
 * 1...date. Value "0" is "today"
 * 2...(optional). date to display. will be automatically filled if 0 and 1 are set.
 * usage:
 * myfield: { maxDate: ['m/d/yy', 0] }
 */
jQuery.validator.addMethod("maxDate", 
    function(value, element, params) {
        if (!params[0])
            throw 'params missing dateFormat';
        if (typeof(params[1]) == 'undefined' )
            throw 'params missing maxDate';

        var dateFormat = params[0];
        var maxDate = params[1];
        if (maxDate == 0) {
            maxDate = new Date();
            maxDate.setHours(0); // make it 00:00:0
            maxDate.setMinutes(0);
            maxDate.setSeconds(0);
            maxDate.setMilliseconds(0);
        }
        if (typeof(params[2]) == 'undefined' )
            params[2] = $.datepicker.formatDate(dateFormat, maxDate);

        try {
            var valueAsDate = $.datepicker.parseDate( dateFormat, value )
            return (valueAsDate < maxDate);
        } catch (x) {
            return false;
        }

    },'Must be greater than {2}.');


$("#myform").validate({
    rules: {
        datepicker : { 
            maxDate ['m/d/yy', 0]
        }
    }
});
/**
*需要日期选择器和验证器
*
*参数:
*0…日期格式。请参阅日期选择器
*1…日期。值“0”是“今天”
*2…(可选)。要显示的日期。如果设置了0和1,将自动填充。
*用法:
*myfield:{maxDate:['m/d/yy',0]}
*/
jQuery.validator.addMethod(“maxDate”,
函数(值、元素、参数){
如果(!params[0])
抛出'params missing dateFormat';
if(typeof(params[1])==“未定义”)
抛出“参数缺少maxDate”;
var dateFormat=params[0];
var maxDate=params[1];
如果(maxDate==0){
maxDate=新日期();
maxDate.setHours(0);//设为00:00:0
maxDate.setMinutes(0);
maxDate.setSeconds(0);
maxDate.setMillistics(0);
}
if(typeof(params[2])==“未定义”)
参数[2]=$.datepicker.formatDate(dateFormat,maxDate);
试一试{
var valueAsDate=$.datepicker.parseDate(日期格式,值)
返回(valueAsDate
HTML:


工作起来很有魅力。好极了
<input name="datepicker" class="datepicker" type="text"/>