首页 文章

Yii2 Boostrap期间选择器

提问于
浏览
3

我正在使用Yii2,我希望有以下几点:

  • 以"ranges"作为项目的下拉列表(周,整周,周末等) (done)

  • 基于所选范围的RangePicker将:

  • 仅允许几天作为startDate(例如:周=周一;周末=周六)

  • 将根据开始日期自动选择结束日期(例如:周:星期一至星期五;整周:星期一至星期日;星期末:星期六至星期日等)

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

  • 我找不到"onStartDateSelected"的回调(我只看到选择范围时调用的回调,但不是单个开始日期或结束日期)

  • 我没有看到"setStopDate"函数

  • 我看不到如何动态更改几周的可用天数

我看到我们可以有一组预定义的时期,如"last 7 days","this month"等 . 但这是 not 我想要的 . 我希望用户能够选择开始日期,但会根据用户设置的内容自动计算结束日期 .

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

1 回答

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

相关问题