php日期范围选择器,jQuery日期范围选择器分析

jQuery Date Range Picker是一款允许用户选择一个日期时间范围的jQuery日期选择器插件。整个日期选择器插件使用CSS来渲染样式,可以非常容易的使用CSS来定制皮肤。而且浏览器兼容性非常好,支持多种时间格式。

af2d3471b4723e35769a926761222470.png

查看演示 下载源码

准备

使用该日期选择器插件需要 jQuery 1.3.2+和Moment 2.2.0+的支持。

HTML结构

在需要放置日期选择器的地方添加以下html结构,就是一个输入框。

调用插件

调用jQuery Date Range Picker插件非常简单,和其他常见的jQuery插件一样:

$('#datepicker').dateRangePicker(option);

配置参数

该日期选择器的默认配置参数如下:

{

format: 'YYYY-MM-DD',

separator: ' to ',

language: 'auto',

startOfWeek: 'sunday',// or monday

getValue: function()

{

return this.value;

},

setValue: function(s)

{

this.value = s;

},

startDate: false,

endDate: false,

minDays: 0,

maxDays: 0,

showShortcuts: true,

time: {

enabled: false

},

shortcuts:

{

//'prev-days': [1,3,5,7],

'next-days': [3,5,7],

//'prev' : ['week','month','year'],

'next' : ['week','month','year']

},

customShortcuts : [],

inline:false,

container: 'body',

alwaysOpen:false,

singleDate:false,

batchMode:false,

beforeShowDay: [function],

daypAttrs: [],

dayTdAttrs: [],

applyBtnClass: ''

}

format (String):Moment的日期格式。点击这里查看Moment文档。

separator (String):日期字符串之间的分隔符。

language (String):预定义的语言是"en"和"cn"。你可以使用这个参数自定义语言。也可以设置为"auto"来让浏览器自己检测语言。

startOfWeek (String):"sunday" 或 "monday"。

getValue (Function):当从DOM元素中获取日期范围时会调用该函数,函数的上下文被设置为datepicker DOM。

setValue (Function):当向DOM元素中写入日期范围时调用该函数。

startDate (String or false):定义用户允许的最早日期,格式和format相同。

endDate (String or false):定义用户允许的最后日期,格式和format相同。

minDays (Number) :该参数定义日期范围的最小天数,如果设置为0,表示不限制最小天数。

maxDays (Number):该参数定义日期范围的最大天数,如果设置为0,表示不限制最大天数。

showShortcuts (Boolean) :先生或隐藏shortcuts区域。

time (Object):如果允许该参数就会添加时间的范围选择。

shortcuts (Object):定义快捷键按钮。

customShortcuts (Array):定义自定义快捷键按钮。

inline (Boolean):使用inline模式渲染该日期选择器,而不是overlay模式。如果设置为true,则要一起设置container参数。

container (String, css selector || DOM Object) :要进行渲染的日期选择器DOM元素。

alwaysOpen (Boolean):如果使用inline模式,你可能希望在页面加载时就渲染日期选择器。该参数设置为true时会隐藏"close"按钮。

singleDate (Boolean):设置为true可以选择单个的日期。

batchMode (false / 'week' / 'month'):自动批处理模式。

事件

当该日期选择器在DOM中选择某个日期范围时会触发三个事件。

$('#datepicker')

.dateRangePicker()

.bind('datepicker-change',function(event,obj)

{

console.log(obj);

// obj will be something like this:

// {

// date1: (Date object of the earlier date),

// date2: (Date object of the later date),

// value: "2013-06-05 to 2013-06-07"

// }

})

.bind('datepicker-apply',function(event,obj)

{

console.log(obj);

})

.bind('datepicker-close',function()

{

console.log('close');

});

API

在你调用$(dom).dateRangePicker()之后:

$(dom).data('dateRangePicker')

.setDateRange('2013-11-20','2013-11-25'); //set date range, two date strings should follow the `format` in config object

.clear(); // clear date range

.close(); // close date range picker overlay

.open(); // open date range picker overlay

.destroy(); // destroy all date range picker related things

项目地址:https://github.com/longbill/jquery-date-range-picker

相关推荐:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值