https://github.com/longbill/jquery-date-range-picker
我的一切都运行得很好,但我似乎无法让选择器使用我在中设置的默认值。有两个输入,开始日期和结束日期。我有一个value="”,其中两个日期都应该是日期选择器的默认日期。然后用户可以更改这些日期。
我已经尝试了一些不同的想法,但是我不能得到任何东西来获取输入的value属性。
下面是我的代码:
<div class="datepicker-to-from">
<input type="date" id="startTimestamp" class="date-picker" value="11/18/2012 05:45 AM">
<input type="date" id="endTimestamp" class="date-picker" value="04/09/2014 5:00 PM">
</div>
$('.datepicker-to-from').dateRangePicker({
format: 'MM/DD/YYYY HH:mm A',
showShortcuts: false,
time: {
enabled: true
},
getValue: function(){
$('#startTimestamp').val() + ' to ' + $('#endTimestamp').val();
},
setValue: function(){
$('#startTimestamp').val();
$('#endTimestamp').val();
},
startDate: $('#startTimestamp').val()
});
**更新4/10/2015:**在andybeli和The F的帮助下,我解决了这个问题。最终的JS代码看起来像这样,对于那些遇到类似情况的人来说。
$('.datepicker-to-from').dateRangePicker({
format: 'MM/DD/YYYY HH:mm A',
showShortcuts: false,
time: {
enabled: true
},
setValue: function(s,s1,s2){
$('#startTimestamp').val(s1);
$('#endTimestamp').val(s2);
},
});
var startDate = $('#startTimestamp').val();
var endDate = $('#endTimestamp').val();
$('.datepicker-to-from').data('dateRangePicker').setDateRange(startDate,endDate);
3条答案
按热度按时间kupeojn61#
在Daterangepicker中,我们必须在startDate和endDate参数中传递值。
注意:这里我们必须传递“m/d/Y”格式的Date,因为这是默认类型,除非你没有在locale数组中指定格式。
nsc4cvqm2#
这个插件需要一个实际的日期对象来运行。幸运的是,你的value="”字符串足以使用
new Date()
创建这样的对象:如果你绝对需要显示AM/PM,请检查这个answer。适应这个应该不会很难。
标准的setter和getter,以及
$(dom).setDate()
可能会很麻烦,因为您要处理的是两个输入字段,无论如何它们都包含您想要的值。我从w3 js中窃取了addZero函数,您可以查看Dates以获取更多信息。
mwyxok5s3#
如果使用多个输入