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

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

问题描述

我正在使用jQuery datepicker。在我的EndDate文本框中,我想使用从StartDate文本框+ 1中选择的日期。我如何做?



没有工作。在我的开始日期,我有...

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

然后在我的结束日期我有...

  minDate:testm,

但结束日期仍然是这个月的所有日子。






编辑我很好奇为什么这不行。在我的开始日期datepicker我有这个..

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

为什么我不能进入我的结束日期datepicker并说, code> 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()
{

}
});


解决方案

您需要动态设置最小日期开始日期的变更事件。



如下所示:

  $(#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
});

在minDate设置为 myotherinput 。设置minDate的过程无疑需要DOM操作,哪个日期选择器在初始化时管理或何时调用选项。只需更改用于初始化的变量就不会影响已经初始化的日期戳。


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
}

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


Edit. Still not working

    $(".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.

Something like:

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

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

Answer to the edit:

You cannot do the following:

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

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天全站免登陆