jQuery datepicker minDate 变量 [英] jQuery datepicker minDate variable

查看:16
本文介绍了jQuery datepicker minDate 变量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用 jQuery 日期选择器.在我的EndDate"文本框中,我想使用从StartDate"文本框中选择的日期 + 1.我该怎么做?

I'm usung the jQuery datepicker. In my "EndDate" textbox I'd like to use the date selected from the the "StartDate" textbox + 1. How do I do this?

我试过了,但没有用.在我的开始日期代码中,我有...

I tried this but didn't work. In my start date code I had...

            test = $(this).datepicker('getDate');
            testm = new Date(test.getTime());
            testm.setDate(testm.getDate() + 1);

然后在我的结束日期代码中我有...

Then in my end date code I had...

minDate: testm,

但结束日期仍然使该月的所有天数都可用.

but the end date still made all the days for the month available.

编辑.我很好奇为什么这不起作用.在我的开始日期日期选择器中,我有这个..

Edit. I'm curious as to why this doesn't work. In my start date datepicker I have this..

onSelect: function (dateText, inst) {
    test = dateText
}

为什么我不能进入我的结束日期日期选择器并说,minDate:test?

Why can't I come down into my end date datepicker and say, minDate: test?

编辑.仍然无效

    $(".dateStartDatePickerBox").datepicker({
        minDate:'-0d',
        onSelect: function(dateText, inst)
        {
            test = $(this).datepicker('getDate');
            testm = new Date(test.getTime());
            testm.setDate(testm.getDate() + 1);

            $("#dateEndDatePickerBox").datepicker("option", "minDate", testm);
        }
    });

    $(".dateEndDatePickerBox").datepicker({
        onSelect: function()
        {

        }
    });

推荐答案

您需要在开始日期的更改事件上动态设置最小日期.

You'll need to set the min date dynamically on the change event of the start date.

类似于:

$("#startDate").change(function() {
    test = $(this).datepicker('getDate');
    testm = new Date(test.getTime());
    testm.setDate(testm.getDate() + 1);

    $("#endDate").datepicker("option", "minDate", testm);
});

回答

您不能执行以下操作:

var test;
$("#myinput").datepicker({
    onSelect: function() { test = $(this).datepicker("getdate"); }
});
$("#myotherinput").datepicker({
    minDate: test
});

myotherinput 上设置 minDate 时,测试未初始化.设置 minDate 的过程无疑需要日期选择器在初始化或调用选项"时管理的 DOM 操作.简单地更改用于初始化的变量不会影响已经初始化的日期选择器.

Test is uninitialized at the time that minDate is being set on myotherinput. The process of setting the minDate doubtless requires DOM manipulation which datepicker manages on initialization or when "option" is called. Simply changing the variable that was used for initialization does not effect the already initialized datepicker.

这篇关于jQuery datepicker minDate 变量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆