使用了两个Jquery日期选取器,StartDate和EndDate
<input id="StartDate" class="datepicker setNext hasDatepicker" type="text" value="13/02/2015" name="StartDate">
<input id="EndDate" class="datepicker hasDatepicker" type="text" value="15/02/2015" name="EndDate">
当选择StartDate日期选择器时,我希望EndDate日期选择器为StartDate +1天,并使其不能在EndDate中选择比StartDate中更早的日期。
我有这个代码:
$(function () {
$(".datepicker").datepicker({
dateFormat: 'dd/mm/yy',
onSelect: function( selectedDate ) {
if(this.id == 'StartDate') {
var minDate = selectedDate + 1;
$('#to').datepicker("option", "minDate", minDate);
}
}
});
});
因此,它点击了onSelect ok,但随后向日期添加1不起作用(我只得到了结尾为1的日期字符串,即"31/12/20141")。
我还在OnSelect中尝试了以下方法,假设selectedDate是字符串而不是日期类型:
var minDate = new Date(selectedDate);
var tomorrow = new Date();
tomorrow.setDate(minDate.getDate() + 1);
$('#to').datepicker("option", "minDate", tomorrow);
minDate最后变成了一个Invalid Date,明天也一样。我不知道如何从字符串中设置日期。请尝试以下方法:
var minDate = selectedDate.getDate();
获取一个"未捕获的TypeError:undefined不是函数"。
使用JQuery 1.11.1,英国日期格式为日/月/年。
4条答案
按热度按时间hwamh0ep1#
如果要更改另一个添加日期的日期选择器的日期选择器日期,可以执行以下操作:
注意selectedDate的格式为dd/mm/YYYY,这不是在Date构造函数中使用的有效字符串日期格式。然后必须对其进行解析。
下面是一个工作示例fiddle
q9yhzks02#
这里我让用户选择的间隔只有10天。。你可以修改它根据您的要求。
xiozqbni3#
您可以使用设置日期和获取日期。
示例:
如果要更改日期格式,请使用:
要将输入转换为日期:
3zwjbxry4#
你甚至可以用这个。