【问题标题】:Select month date range and month using Bootstrap Datepicker使用 Bootstrap Datepicker 选择月份日期范围和月份
【发布时间】:2017-09-09 09:35:52
【问题描述】:

如何使用 Bootstrap Datepicker 选择月份日期和月份的范围?

我目前正在使用 jQuery UI 日期选择器来选择月份和星期。

这是我尝试转换为月份的星期日期范围的示例。但遇到问题

这里是 js fiddle https://jsfiddle.net/prtk/znbx32j1/1/的链接

html

<div class="form-group col-md-8 col-md-offset-2" id="week-picker-wrapper">
    <label for="week" class="control-label">Select Week</label>
    <div class="input-group">
        <span class="input-group-btn">
            <button type="button" class="btn btn-rm week-prev">&laquo;</button>
        </span>
        <input type="text" class="form-control week-picker" placeholder="Select a Week">
        <span class="input-group-btn">
            <button type="button" class="btn btn-rm week-next">&raquo;</button>
        </span>
    </div>
</div>

js

var weekpicker, start_date, end_date;

function set_week_picker(date) {
    start_date = new Date(date.getFullYear(), date.getMonth(), date.getDate() - date.getDay());
    end_date = new Date(date.getFullYear(), date.getMonth(), date.getDate() - date.getDay() + 6);
    weekpicker.datepicker('update', start_date);
    weekpicker.val((start_date.getMonth() + 1) + '/' + start_date.getDate() + '/' + start_date.getFullYear() + ' - ' + (end_date.getMonth() + 1) + '/' + end_date.getDate() + '/' + end_date.getFullYear());
}
$(document).ready(function() {
    weekpicker = $('.week-picker');
    console.log(weekpicker);
    weekpicker.datepicker({
        autoclose: true,
        forceParse: false,
        container: '#week-picker-wrapper',
    }).on("changeDate", function(e) {
        set_week_picker(e.date);
    });
    $('.week-prev').on('click', function() {
        var prev = new Date(start_date.getTime());
        prev.setDate(prev.getDate() - 1);
        set_week_picker(prev);
    });
    $('.week-next').on('click', function() {
        var next = new Date(end_date.getTime());
        next.setDate(next.getDate() + 1);
        set_week_picker(next);
    });
    set_week_picker(new Date);
});

【问题讨论】:

    标签: javascript jquery twitter-bootstrap date datepicker


    【解决方案1】:

    您需要修改prevnextclick 事件的计算。检查this fiddle(检查控制台以查看值)。

    使用setMonth()getMonth() 代替setDate()getDate()。此外,您可能需要调整/设置 Day 值以获得准确的结果。

    更新:这是updated fiddle

    【讨论】:

    • 不要尝试,但成功你能不能让我为解决方案而烦恼
    • 答案中有小提琴链接
    • 但不准确
    • 好的,你能给我一个示例数据吗?就像您期望的结果一样?
    • 上一次点击 (01/08/2017 至 01/09/2017) 当前(01/09/2017 至 01/10/2017) 下一次点击 (01/10/2017 至 01/11/ 2017)
    猜你喜欢
    • 1970-01-01
    • 2013-04-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-24
    • 1970-01-01
    • 2016-10-24
    • 1970-01-01
    相关资源
    最近更新 更多