Yii2 Boostrap期间选择器

时间:2017-10-10 16:29:49

标签: yii2 daterangepicker bootstrap-daterangepicker

我正在使用Yii2,我希望得到以下内容:

  • 以“范围”作为项目的下拉列表(周,整周,周末等)(已完成)
  • 基于所选范围的RangePicker将:
    • 仅允许几天作为startDate(例如:周=周一;周末=周六)
    • 将根据开始日期自动选择结束日期(例如:周:周一至周五;整周:周一至周日;周末:周六至周日等)

对于下拉菜单,没关系。但对于DateRangePicker,我开始使用Krajee DateRangePicker

  • 我找不到“onStartDateSelected”的回调(我只看到选择范围时调用的回调,但不是个别开始日期或结束日期)
  • 我没有看到“setStopDate”功能
  • 我看不到如何动态更改可用的星期几

我看到我们可以有一组预定义的时间段,例如“过去7天”,“本月”等等。但这是我想要的。我希望用户能够选择开始日期,但会根据用户设置的内容自动计算结束日期。

(我是网络开发人员的新手,所以如果您在我的问题中发现任何可以改进的内容,请不要害怕分享)

1 个答案:

答案 0 :(得分:0)

enter image description here您可以使用以下方法完成任务:

使用以下库:

use kartik\date\DatePicker;

在视图中使用以下代码:

<?php
$layout3 = '<span class="input-group-addon">From Date</span>
        {input1}
        <span class="input-group-addon">To Date</span>
        {input2}
        <span class="input-group-addon kv-date-remove">
            <i class="glyphicon glyphicon-remove"></i>
        </span>';
$previousDay = strtotime('-7 day', strtotime(date('d-M-Y'))); //Set as per your requirement[![enter image description here][1]][1]
echo DatePicker::widget([
    'type' => DatePicker::TYPE_RANGE,
    'name' => 'startDate',
    'value' => date('d-M-Y', $previousDay),
    'name2' => 'endDate',
    'value2' => date('d-M-Y'),
    'separator' => '<i class="glyphicon glyphicon-resize-horizontal"></i>',
    'layout' => $layout3,
    'pluginOptions' => [
        'autoclose' => true,
        'format' => 'dd-M-yyyy'
    ]
]);
?>