Yii2 Boostrap 周期选择器

标签 yii2 daterangepicker bootstrap-daterangepicker

我正在使用 Yii2,我想要以下东西:

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

对于下拉菜单,没问题。但是对于 DateRangePicker,我开始使用 Krajee DateRangePicker

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

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

(我是网络开发新手,所以如果您发现我的问题有任何可以改进的地方,请不要害怕分享)

最佳答案

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

使用以下库:

use kartik\date\DatePicker;

在 View 中使用以下代码:

<?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'
    ]
]);
?>

关于Yii2 Boostrap 周期选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46671588/

相关文章:

javascript - 如何在 daterangepicker JS 和 Laravel 中禁用占用日期

php - 在 Yii2 中以多态方式从数据库中查找模型

javascript - Daterangepicker.js 预定义日期范围的 OnChange 事件

javascript - 默认情况下,今天的日期在 daterangepicker 中处于事件状态

javascript - DateRangePicker - 从第一个输入选定值开始的第二个输入的最小日期

javascript - Bootstrap 日期范围选择器 -> 单个日期选择器 : How to set a Date

javascript - 日期范围选择器 - 24 小时范围选择

php - 从 git 中 pull 出一个 yii 项目后 composer update 中的问题

php - Yii2 动态 URL 路由规则

php - 在 YII2 框架中为 css 创建绝对 url