2013-03-18 27 views
4

我有两个日期选择器(jqueryui),我想将第二个输入(minDate属性)限制在第一个选定的值。我应该怎么做?我写了下面的代码,没有成功:如何在初始化后设置jqueryui datepicker minDate?

$("#picker1").button().click(function() { 
     var minDate = $("#picker1").datepicker("getDate"); 
     $("#picker2").datepicker("option", "minDate", minDate); 
     $("#picker2").datepicker("refresh"); 
     }); 

你能帮我吗?

谢谢!

+1

http://jqueryui.com/datepicker/#date-range – j08691 2013-03-18 16:07:03

回答

1

几天,对我来说什么worket:

$("#picker1").datepicker({ 
    onClose: function(selectedDate){ 
    $("#picker2").datepicker("option", "minDate",selectedDate); 
    } 
}); 

从中检索:jQueryUi

答案在此日期之前没有工作。来自@Arun P Johny的回答在小提琴中工作得很好,但不是在我的系统中(我不知道为什么)。

8

尝试

$('#p1, #p2').datepicker(); 

$('#p1').change(function(){ 
    $('#p2').datepicker('option', 'minDate', $('#p1').datepicker('getDate')) 
}); 

演示:Fiddle

+0

很好。这正是我想要的。但我没有做到在我的JSP中做同样的事情,我使用jQuery来操纵组件的行为。你有什么想法/小费,我该怎么做才能达到同样的目标?谢谢你的回应! – Alex 2013-03-26 15:08:04

+0

如果您使用jQuery UI 1.8,请注意,'选项'方法直到jQuery UI 1.9才被引入 – osullic 2017-03-15 11:28:39

0

我怀疑getDate返回字符串。你可以尝试这样的。后

$("#picker1").button().click(function() { 
     var minDate = $("#picker1").datepicker("getDate");  
     $("#picker2").datepicker("option", "minDate", new Date(minDate)); 
     $("#picker2").datepicker("refresh"); 
     }); 
相关问题