您的位置:首页 > Web前端 > BootStrap

BootStrap dateRangePicker时间范围控件

2014-07-16 15:19 471 查看


BootStrap dateRangePicker时间范围控件

1      安装引用

1.1    下载zip

Github:https://github.com/dangrossman/bootstrap-daterangepicker/

1.2    引入页面

引入样式和
javascript

<linkhref="bootstrap.min.css" rel="stylesheet">

<linkhref="font-awesome.min.css" rel="stylesheet">

<linkrel="stylesheet" type="text/css" media="all"href="daterangepicker-bs3.css" />

<scripttype="text/javascript"src="jquery.min.js"></script>

<scripttype="text/javascript" src=" bootstrap.min.js"></script>

<scripttype="text/javascript" src="moment.js"></script>

<scripttype="text/javascript"src="daterangepicker.js"></script>

CDN:

bootstrap.min.css:

http://netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css

font-awesome.min.css

http://netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.min.css

jquery.min.js

https://ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js

bootstrap.min.js

2      使用及例子

2.1    使用

使用daterangepicker()为元素创建一个时间范围控件

<scripttype="text/javascript">

$(document).ready(function(){

 
              $('input[name="daterange"]').daterangepicker();

});

</script>

daterangepicker()还可以有个操作对象参数和回调函数。当用户选择时间范围后调用回调函数,参数是monent时间对象的开始时间、结束时间、预定义的范围标签选择。

$('input[name="daterange"]').daterangepicker(

 
{

   
format: 'YYYY-MM-DD',

   
startDate: '2013-01-01',

   
endDate: '2013-12-31'

 
},

 
function(start, end, label) {

   
alert('A date range was chosen: ' +start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD'));

 
}

);

操作参数

`startDate`: (Date object, moment object or string)
起始时间

`endDate`: (Date object, moment object or string)
结束时间

`minDate`: (Date object, moment object or string)
可选最早时间

`maxDate`: (Date object, moment object or string)
可选最迟时间

`timePicker`: (boolean)
是否显示time选择

`timePickerIncrement`: (number) time选择递增数

`timePicker12Hour`: (boolean)
是否12小时制

`opens`: (string: 'left'/'right')
显示在元素左边还是右边

`buttonClasses`: (array)
按钮样式

`applyClass`: (string)
应用按钮样式

`cancelClass`: (string)
取消按钮样式

`format`: (string) date/time格式

`separator`: (string)
分隔符

`locale`: (object)
本地设置

 

`singleDatePicker`: (boolean)
是否是单个时间选择器

`parentEl`: (string)
将控件放到哪个元素内,默认body

函数方法

`setOptions(object,function)`:
设置操作

 

`setStartDate(Date/moment/string)`:设置起始时间

 

`setEndDate(Date/moment/string)`:设置结束时间

 

例子:

//create a new daterange picker

$('#daterange').daterangepicker({startDate: '2014-03-05', endDate: '2014-03-06' });

 

//change theselected date range of that picker

$('#daterange').data('daterangepicker').setStartDate('2014-03-01');

$('#daterange').data('daterangepicker').setEndDate('2014-03-31');

事件

`show.daterangepicker`:Triggered when the picker
is shown

 

`hide.daterangepicker`:Triggered when the picker
is hidden

 

`apply.daterangepicker`:Triggered when the apply
button is clicked

 

`cancel.daterangepicker`:Triggered when the cancel
button is clicked

例子:

$('#daterange').daterangepicker();

 

$('#daterange').on('cancel.daterangepicker',function(ev, picker) {

 
//do something, like clearing an input

 
$('#daterange').val('');

});

 

$('#daterange').on('apply.daterangepicker',function(ev, picker) {

 console.log(picker.startDate.format('YYYY-MM-DD'));

 console.log(picker.endDate.format('YYYY-MM-DD'));

});

2.2    效果举例

<h4>Basic DateRange Picker</h4>

<divclass="well">

 

  
<formclass="form-horizontal">

        
 <fieldset>

        
 <div class="control-group">

                  
<divclass="controls">

                  
 <div class="input-prependinput-group">

                  
   <span class="add-oninput-group-addon"><i class="glyphicon glyphicon-calendar fafa-calendar"></i></span><input type="text"style="width: 200px" name="reservation"id="reservation"
class="form-control"value="03/18/2013 - 03/23/2013" />

                  
 </div>

                  
</div>

        
 </div>

        
 </fieldset>

  
</form>

 

  
<scripttype="text/javascript">

  
$(document).ready(function() {

        
 $('#reservation').daterangepicker(null, function(start, end, label) {

                  
console.log(start.toISOString(),end.toISOString(), label);

        
 });

  
});

  
</script>

</div>

 

<h4>BasicSingle Date Picker</h4>

<divclass="well">

 

  
<formclass="form-horizontal">

        
 <fieldset>

        
 <div class="control-group">

                  
<divclass="controls">

                  
 <div class="input-prependinput-group">

                  
   <span class="add-oninput-group-addon"><i class="glyphicon glyphicon-calendar fafa-calendar"></i></span><input type="text"style="width: 200px" name="birthday"id="birthday"
class="form-control"value="03/18/2013" />

                  
 </div>

                  
</div>

        
 </div>

        
 </fieldset>

  
</form>

  
<scripttype="text/javascript">

  
$(document).ready(function() {

        
 $('#birthday').daterangepicker({ singleDatePicker: true },function(start, end, label) {

                  
console.log(start.toISOString(),end.toISOString(), label);

        
 });

  
});

  
</script>

</div>

 

<h4>Date Range& Time Picker with 30 Minute Increments</h4>

<divclass="well">

  
<formclass="form-horizontal">

        
 <fieldset>

        
 <div class="control-group">

                  
<labelclass="control-label" for="reservationtime">Choose yourcheck-in and check-out times:</label>

                  
<divclass="controls">

                  
 <div class="input-prependinput-group">

                  
   <span class="add-on input-group-addon"><iclass="glyphicon glyphicon-calendar fafa-calendar"></i></span>

                  
   <input type="text"style="width: 400px" name="reservation"id="reservationtime" class="form-control"value="08/01/2013 1:00 PM - 08/01/2013 1:30 PM" 
class="span4"/>

                  
 </div>

                  
</div>

        
 </div>

        
 </fieldset>

  
</form>

 

  
<scripttype="text/javascript">

  
$(document).ready(function() {

        
 $('#reservationtime').daterangepicker({

                  
timePicker: true,

                  
timePickerIncrement: 30,

                  
format: 'MM/DD/YYYY h:mm A'

        
 }, function(start, end, label) {

                  
console.log(start.toISOString(),end.toISOString(), label);

        
 });

  
});

  
</script>

</div>    
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: