如何分隔日期输入引导程序日期范围选择器

时间:2018-07-29 14:34:45

标签: javascript jquery twitter-bootstrap

我有使用daterangepicker

的表单

url:https://github.com/dangrossman/daterangepicker

我可以使用此简单脚本将daterangepicker附加到表单中。

script 

//Date range picker
$('.daterp').daterangepicker();

/script

然后将类添加到我的表单中。

class="form-control daterp"

所以会

<input type="text" name="start_date" style="width: 100%;" required="" class="form-control daterp" id="id_start_date">

当我单击“提交”时,将07/29/2018 - 07/29/2018之类的“给我”提交给我的数据库。

那不是我所需要的。

像这样想象我的数据库表

#table shift
+---------------+---------------+
| start         | end           |
+---------------+---------------+
| 2018-01-01    | 2018-01-05    | 
| 2018-01-08    | 2018-01-14    |
| ....          | ....          |
+---------------+---------------+

在我的form field上单击值为07/29/2018 - 07/29/2018的提交时我需要什么

07/29/2018将转到start

07/29/2018将转到end

但只有一个form field

该怎么做?...

谢谢!

3 个答案:

答案 0 :(得分:2)

您可以查看此link

std::swap(array[i], array[i+1]);

答案 1 :(得分:1)

您可以在后端用SEGMENT_TYPE ------------------ LOBINDEX INDEX PARTITION TABLE SUBPARTITION ROLLBACK TABLE PARTITION NESTED TABLE LOB PARTITION LOBSEGMENT INDEX TABLE TYPE2 UNDO CLUSTER 分隔符来分隔日期范围字符串。如果您使用node.js,则可以尝试

' - '

或者如果您使用PHP

[startDate, endDate] = '07/12/2018 - 07/28/2018'.split(' - ');

另一种解决方案是在提交表单之前使用设置值 例如, 在HTML中:

list($startDate, $endDate) = explode(' - ', $_POST['start_date']);

在JS中:

<form action="index.php" method="post">
    <input type="text" class="date_range">
    <input type="hidden" name="start_date">
    <input type="hidden" name="end_date">
    <input type="submit">
</form>

答案 2 :(得分:0)

如果希望将其发送到单个字段中的表单,则似乎需要使用后端运行的任何代码在后端解析该单个字段。 / p>

但是在我看来,您真正想要的是将日期分成两个单独的字段。因此,将主字段的名称更改为“ date_range”,并添加两个隐藏的字段,分别称为“ start_date”和“ end_date”,然后在表单提交或与日期范围选择器关联的事件上,按如下所示拆分值:

$('#start_date').val( $('#date_range').text().split(' - ')[0]);
$('#end_date').val( $('#date_range').text().split(' - ')[1]);