BootStrapDatePicker時間選擇器--Tango

qq_35900437發表於2017-10-24

團隊中缺少前端開發人員,作為非專業前端,鴨子硬上架摸索了一統,總結一下,受用以後,BootStrap時間選擇器的使用;


踩過的坑:

js對時間選擇器賦值,結果開始時間和結束時間的onchange事件失效,僅滑鼠在其他處單擊後事件才觸發;

解決方案為:js賦值操作後,直接為開始時間 觸發input事件;

程式碼:$('#starttime').trigger(‘input’);


css和js資源引入

    <link rel="stylesheet" href="bootstrap.min.css" >
    <link href="bootstrap-datetimepicker.min.css" rel="stylesheet">

    <script type="text/javascript" src="jquery.min.js"></script>
    <script src="bootstrap.min.js"></script>
    <script src="moment.js"></script>
    <script src="bootstrap-datetimepicker.min.js"></script>
html頁面
<div class="container">
    <div class="row" style="margin-bottom: 10px;">
        <div class="form-inline">
            <div class="col-md-4">
                <label class="text-success">時間段 </label>
                <input class="form-control combobox" style="width:170px;" id="selecttime"/>
            </div>
            <div class="col-md-4">
                <label class="text-success">  開始時間 <font color='red' align="center">*</font></label>
                <div class="input-group date">
                    <input id="starttime"  type='text' class="form-control"  style="width:170px;">
                    <span class="input-group-addon">
                                    <span class="glyphicon glyphicon-calendar"></span>
                                    </span>
                </div>
            </div>
            <div class="col-md-4">
                <label class="text-success">  結束時間 <font color='red'>*</font></label>
                <div class="input-group date">
                    <input id="endtime" type='text' class="form-control" style="width:170px;" />
                    <span class="input-group-addon">
                                        <span class="glyphicon glyphicon-calendar"></span>
                                    </span>
                </div>
            </div>
        </div>
    </div>

</div>
控制開始時間和結束時間的指令碼

<script type="text/javascript">
    //時間選擇器
    $(function () {
        var picker1 = $("#starttime").datetimepicker({
            format: 'YYYY-MM-DD HH:mm:ss',
            locale: moment.locale('zh-cn'),
            //minDate: '2017-7-1'
        });
        var picker2 = $("#endtime").datetimepicker({
            format: 'YYYY-MM-DD HH:mm:ss',
            locale: moment.locale('zh-cn')
        });
        //動態設定最小值
        picker1.on('dp.change', function (e) {
            picker2.data('DateTimePicker').minDate(e.date);
        });
        //動態設定最大值
        picker2.on('dp.change', function (e) {
            picker1.data('DateTimePicker').maxDate(e.date);
        });
    });

</script>




相關文章