【问题标题】:How to enumerate dates between two dates with moment JS如何用时刻JS枚举两个日期之间的日期
【发布时间】:2022-06-10 01:55:05
【问题描述】:
目前使用的是wenzhixin 的Bootstrap Table 库。我正在尝试找到一种方法来设置使用数据范围原则的过滤器。
此代码“https://jsfiddle.net/wenyi/06pg2wms/11/”工作正常,但当日期格式(在引导表中)如下时它不起作用:YYY-MM-DD HH:mm :ss。
有人知道解决这个问题的方法吗?
代码适用于这种类型的日期格式:
<tr id="tr-id-1" class="tr-class-1">
<td id="td-id-1" class="td-class-1">2019-02-01</td>
<td>0</td>
</tr>
<tr id="tr-id-2" class="tr-class-2">
<td id="td-id-2" class="td-class-2">2019-02-02</td>
<td>1</td>
</tr>
<tr id="tr-id-3" class="tr-class-3">
<td id="td-id-3" class="td-class-3">2019-02-03</td>
<td>2</td>
</tr>
但我想要一些适用于这些日期格式的东西:
<tr id="tr-id-1" class="tr-class-1">
<td id="td-id-1" class="td-class-1">2019-02-01 13:21:30</td>
<td>0</td>
</tr>
<tr id="tr-id-2" class="tr-class-2">
<td id="td-id-2" class="td-class-2">2019-02-02 15:23:11</td>
<td>1</td>
</tr>
<tr id="tr-id-2" class="tr-class-2">
<td id="td-id-2" class="td-class-2">2019-02-02 15:23:11</td>
<td>1</td>
</tr>
<tr id="tr-id-3" class="tr-class-3">
<td id="td-id-3" class="td-class-3">2019-02-03 20:21:43</td>
<td>2</td>
</tr>
<tr id="tr-id-3" class="tr-class-3">
<td id="td-id-3" class="td-class-3">2019-02-03 20:21:43</td>
<td>2</td>
</tr>
【问题讨论】:
标签:
javascript
date
momentjs
date-format
bootstrap-table
【解决方案1】:
Javascript代码:
$(function()
{
$('#table').bootstrapTable()
}
)
//Moment.JS Return Date Ranges
function getDates(startDate, stopDate) {
var dateArray = [];
var currentDate = moment(startDate);
var stopDate = moment(stopDate);
while (currentDate <= stopDate) {
dateArray.push( moment(currentDate).format('YYYY-MM-DD'))
currentDate = moment(currentDate).add(1, 'days');
}
return dateArray;
}
$('#ok').click( function()
{
var $table = $('#table')
var from=$("input[type=date][name=date1]" ).val();
var to=$("input[type=date][name=date2]" ).val();
$table.bootstrapTable('filterBy',{ ETA: getDates(from,to)})
})
HTML 代码:
<div id="toolbar">
<div class="form-inline" role="form">
<div class="form-group">
<span>From Date </span>
<input name="date1" class="form-control w70" type="date" >
</div>
<div class="form-group">
<span>To Date </span>
<input name="date2" class="form-control w70" type="date">
</div>
<button id="ok" type="submit" class="btn btn-primary">OK</button>
</div>
</div>
<table id="table" data-toggle="table" data-toolbar="#toolbar" >
<thead>
<tr>
<th data-field="ETA">Date</th>
<th data-field="number">Number</th>
</tr>
</thead>
<tbody>
<tr id="tr-id-1" class="tr-class-1">
<td id="td-id-1" class="td-class-1">2019-02-01</td>
<td>0</td>
</tr>
<tr id="tr-id-2" class="tr-class-2">
<td id="td-id-2" class="td-class-2">2019-02-02</td>
<td>1</td>
</tr>
<tr id="tr-id-3" class="tr-class-3">
<td id="td-id-3" class="td-class-3">2019-02-03</td>
<td>2</td>
</tr>
<tr id="tr-id-4" class="tr-class-4">
<td id="td-id-4" class="td-class-4">2019-02-04</td>
<td>3</td>
</tr>
<tr id="tr-id-5" class="tr-class-5">
<td id="td-id-5" class="td-class-5">2019-02-05</td>
<td>4</td>
</tr>
<tr id="tr-id-6" class="tr-class-6">
<td id="td-id-6" class="td-class-6">2019-02-06</td>
<td>5</td>
</tr>
<tr id="tr-id-7" class="tr-class-7">
<td id="td-id-7" class="td-class-7">2019-02-07</td>
<td>6</td>
</tr>
<tr id="tr-id-8" class="tr-class-8">
<td id="td-id-8" class="td-class-8">2019-02-08</td>
<td>7</td>
</tr>
<tr id="tr-id-9" class="tr-class-9">
<td id="td-id-9" class="td-class-9">2019-02-09</td>
<td>8</td>
</tr>
<tr id="tr-id-10" class="tr-class-10">
<td id="td-id-10" class="td-class-10">2019-02-10</td>
<td>9</td>
</tr>
</tbody>
</table>