2017-10-13 155 views
0

我正在使用瓶来构建一些小应用程序。我想建立一个收集开始日期和结束日期的表单。理想情况下,我希望将此表单数据发送到我的数据库以在日期范围内运行一些搜索。我发现了一些与我正在尝试做的事情非常接近的例子。我无法弄清楚的一件事是日期范围是预定义的。我希望至少将结束日期更新为当前日期,而不是预定义的字段。日期范围选择器在结束范围内获取当前日期

<script type="text/javascript" src="//cdn.jsdelivr.net/jquery/1/jquery.min.js"></script> 
<script type="text/javascript" src="//cdn.jsdelivr.net/momentjs/latest/moment.min.js"></script> 


<!-- Include Date Range Picker --> 
<script type="text/javascript" src="//cdn.jsdelivr.net/bootstrap.daterangepicker/2/daterangepicker.js"></script> 
<link rel="stylesheet" type="text/css" href="//cdn.jsdelivr.net/bootstrap.daterangepicker/2/daterangepicker.css" /> 


<input style="width: 40%" class="form-control" type="text" name="daterange" value="01/01/2015 - 01/31/2015" /> 


<script type="text/javascript"> 
    $('input[name="daterange"]').daterangepicker(
{ 
    locale: { 
     format: 'MM-DD-YYYY' 
    }, 
    startDate: '01-01-2013', 
    endDate: '12-31-2013' 
}, 
function(start, end, label) { 
    alert("A new date range was chosen: " + start.format('MM-DD-YYYY') + ' to ' + end.format('MM-DD-YYYY')); 
}); 
</script> 

回答

3

用硬编码的结束日期替代'moment()'。

例子:

$('input[name="daterange"]').daterangepicker(
{ 
    locale: { 
     format: 'YYYY-MM-DD' 
    }, 
    startDate: '2013-01-01', 
    endDate: moment() 
}, 
function(start, end, label) { 
    alert("A new date range was chosen: " + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD')); 
}); 

(同样,不知道这是一个复制/粘贴问题 - 但你缺少的“https:”你的脚本和样式表进口前缀)

+1

要去补充,是否需要? Date.now()? –

+1

@Akin是,或“新日期()”。刚刚使用的时刻,因为它在那里。我不确定日期选择器是否足够聪明,可以在配置中处理时间值,所以最初我使用时间来消除时间。当我看到它并不重要时,我只是离开了那一刻()。 –