日期选择器:jquery datepicker的使用
helloweba.com 作者:月光光 时间:2012-04-08 21:05 标签: jquery datepicker jquery ui
在jquery ui中,提供了一个非常实用的日期选择器:datepicker,使用它能非常方便的展现日历中的日期,灵活配置相关选项,包括日期格式、范围等。我们经常在WEB应用中用到datepicker,比如要求用户输入日期进行相关查询的。我们很早之前就应用datepicker到很多项目中,今天整理成文与大家分享。

准备工作
首先请到jqueryui.com官网下载datepicker插件代码,注意官网提供了整个jquery ui的所有插件下载,但是您可以选择其中几个用到的插件下载,本文中只用到datepicker,所以只选择下载jquery ui核心代码和datepicker代码。你可以直接点击本文上面的Download下载按钮下载demo源码包,其中就包括了datepicker插件源码。
HTML
首先在head之间引入jquery库文件和datepicker插件以及相关css。
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery-ui-datepicker.js"></script>
<link rel="stylesheet" type="text/css" href="css/jquery-ui.css" />
然后在body间加入一个输入框。
<input type="text" id="date_1" />
Javscript
调用datepicker非常简单,直接使用以下代码就可以实现:
$(function(){
$("#date_1").datepicker();
});
这样,单击输入框的时候会自动弹出一个日期选择器,选中日期后,自动关闭选择器,并在输入框中显示选中的日期。
选项及事件使用说明
datepicker提供了丰富的选项设置事件方法调用,笔者先将经常用到的相关属性和方法整理成表格,方便查询和使用。
选项 | 描述 | 默认值 |
altField | 将选择的日期同步到另一个域中,配合altFormat可以显示不同格式的日期字符串。demo | '' |
altFormat | 当设置了altField的情况下,显示在另一个域中的日期格式。 | '' |
appendText | 在日期插件的所属域后面添加指定的字符串。 | '' |
buttonImage | 设置可以用来点击弹出日历的按钮图片,如果非空,则按钮的文本将成为alt属性,不直接显示。demo | '' |
buttonImageOnly | 设置为true时,图片将作为按钮可以点击触发弹出日历 | false |
buttonText | 设置触发按钮的文本内容。 | ... |
changeMonth | 设置是否允许通过下拉框列表选取月份。 | false |
changeYear | 设置是否允许通过下拉框列表选取年份。 | false |
closeText | 设置关闭按钮的文本内容,此按钮需要通过showButtonPanel参数的设置才显示。 | 'Done' |
constrainInput | 如果设置为true,则约束当前输入的日期格式。 | true |
currentText | 设置当天按钮的文本内容,此按钮需要通过showButtonPanel参数的设置才显示。 | 'Today' |
dateFormat | 设置日期字符串的显示格式。demo | 'mm/dd/yy' |
dayNames | 设置一星期中每天的名称,从星期天开始。此内容用于dateFormat时显示,以及日历中当鼠标移至行头时显示。 | ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'] |
dayNamesMin | 设置一星期中每天的缩语,从星期天开始,此内容用于dateFormat时显示,以前日历中的行头显示。 | ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'] |
dayNamesShort | 设置一星期中每天的缩语,从星期天开始,此内容用于dateFormat时显示,以前日历中的行头显示。 | ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'] |
defaultDate | 设置默认加载完后第一次显示时选中的日期。可以是Date对象,或者是数字(从今天算起,例如+7),或者有效的字符串('y'代表年, 'm'代表月, 'w'代表周, 'd'代表日, 例如:'+1m +7d')。 | null |
duration | 设置日期控件展开动画的显示时间,可选是"slow", "normal", "fast",''代表立刻,数字代表毫秒数。 | 'normal' |
firstDay | 设置一周中的第一天。星期天为0,星期一为1,以此类推。 | 0 |
gotoCurrent | 如果设置为true,则点击当天按钮时,将移至当前已选中的日期,而不是今天。 | false |
hideIfNoPrevNext | 设置当没有上一个/下一个可选择的情况下,隐藏掉相应的按钮。 | false |
isRTL | 如果设置为true,则所有文字是从右自左。 | false |
maxDate | 设置一个最大的可选日期。可以是Date对象,或者是数字(从今天算起,例如+7),或者有效的字符串('y'代表年, 'm'代表月, 'w'代表周, 'd'代表日, 例如:'+1m +7d')。demo | null |
minDate | 设置一个最小的可选日期。可以是Date对象,或者是数字(从今天算起,例如+7),或者有效的字符串('y'代表年, 'm'代表月, 'w'代表周, 'd'代表日, 例如:'+1m +7d')。 | null |
monthNames | 设置所有月份的名称。 | ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'] |
monthNamesShort | 设置所有月份的缩写。 | ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'] |
navigationAsDateFormat | 如果设置为true,则formatDate函数将应用到 prevText,nextText和currentText的值中显示,例如显示为月份名称。 | false |
nextText | 设置“下个月”链接的显示文字。 | 'Next' |
numberOfMonths | 设置一次要显示多少个月份。如果为整数则是显示月份的数量,如果是数组,则是显示的行与列的数量。demo | 1 |
prevText | 设置“上个月”链接的显示文字。 | 'Prev' |
shortYearCutoff | 设置截止年份的值。如果是(0-99)的数字则以当前年份开始算起,如果为字符串,则相应的转为数字后再与当前年份相加。当超过截止年份时,则被认为是上个世纪。 | '+10' |
showAnim | 设置显示、隐藏日期插件的动画的名称。 | 'show' |
showButtonPanel | 设置是否在面板上显示相关的按钮。 | false |
showCurrentAtPos | 设置当多月份显示的情况下,当前月份显示的位置。自顶部/左边开始第x位。 | 0 |
showMonthAfterYear | 是否在面板的头部年份后面显示月份。 | false |
showOn | 设置什么事件触发显示日期插件的面板,可选值:focus, button, both | 'focus' |
showOptions | 如果使用showAnim来显示动画效果的话,可以通过此参数来增加一些附加的参数设置。 | {} |
showOtherMonths | 是否在当前面板显示上、下两个月的一些日期数(不可选)。 | false |
stepMonths | 当点击上/下一月时,一次翻几个月。 | 1 |
yearRange | 控制年份的下拉列表中显示的年份数量,可以是相对当前年(-nn:+nn),也可以是绝对值 (-nnnn:+nnnn) | '-10:+10' |
beforeShow | 在日期控件显示面板之前,触发此事件,并返回当前触发事件的控件的实例对象。 | function(input) |
beforeShowDay | 在日期控件显示面板之前,每个面板上的日期绑定时都触发此事件,参数为触发事件的日期。调用函数后,必须返回一个数组:[0]此日期是否可选(true/false),[1]此日期的CSS样式名称(""表示默认),[2]当鼠标移至上面出现一段提示的内容。 | function(date) |
onChangeMonthYear | 当年份或月份改变时触发此事件,参数为改变后的年份月份和当前日期插件的实例。 | function(year, month, inst) |
onClose | 当日期面板关闭后触发此事件(无论是否有选择日期),参数为选择的日期和当前日期插件的实例。demo | function(dateText, inst) |
onSelect | 当在日期面板选中一个日期后触发此事件,参数为选择的日期和当前日期插件的实例。 | function(dateText, inst) |
日期选择器:jquery datepicker的使用的更多相关文章
- jQuery UI 日期选择器(Datepicker)
设置JqueryUI DatePicker默认语言为中文 <!doctype html><html lang="en"> <head> < ...
- (网页)jQuery UI 实例 - 日期选择器(Datepicker)
默认功能 日期选择器(Datepicker)绑定到一个标准的表单 input 字段上.把焦点移到 input 上(点击或者使用 tab 键),在一个小的覆盖层上打开一个交互日历.选择一个日期,点击页面 ...
- WPF 4 日期选择器(DatePicker)
原文:WPF 4 日期选择器(DatePicker) 前一篇<WPF 4 日历控件(Calendar)> 中我们对日历控件的使用方式有了基本了解,本篇将继续介绍WPF 4 中另一 ...
- 日期选择器(DatePicker)
日期选择器(DataPicker) 显示一个可供日期选择的界面 监听器方法init(year,month,day,OnDateChangedListener) 监听器 DataPicker.OnDat ...
- 我的第一个jQuery插件开发(日期选择器,datePicker),功能还不完善,但用于学习参考已经足够了。
一.学习jQuery插件开发网上的帖子很多,插件开发的方式也有好几种,现在推荐一个帖子讲述的特别好,我也是这篇文张的基础上学习的. 参考:http://www.cnblogs.com/ajianbey ...
- jquery日期插件jquery.datePicker参数
1.效果图 2.引入JS.CSS文件 jquery-ui.min.css和jquery-ui.min.js文件 Includes: core.js, widget.js, mouse.js, posi ...
- jquery ui 常用(一)(自动完成 | 标签页 | 折叠面板 | 带图标的按钮 | 日期选择器| )
条件,引用3个文件 jquery-ui.min.css; jquery.min.js; jquery-ui.min.js. 一.自动完成 http://www.w3cschool.cc/jqueryu ...
- 模块:(日期选择)jquery、bootstrap实现日期下拉选择+bootstrap jquery UI自带动画的日期选择器
一:jquery.bootstrap实现日期下拉选择 点击文本框弹出窗口 弹窗显示日期时间选择下拉 年份取当前年份的前后各5年 天数随年份和月份的变化而变化 点击保存,文本框中显示选中的日期 代码部分 ...
- jQuery Datepicker日期控件
datepicker可以为bootstrap添加一个事件选择控件,适用于任何需要调用的场合,支持多种事件格式输出(比如:dd, d, mm, m, yyyy, yy等),是制作网页不可缺失的插件. R ...
随机推荐
- ASP.NET本质论第一章网站应用程序学习笔记1
1.统一资源标示符 1) 格式:协议://主机[.端口号][绝对路径[?参数]],在Http://www.kencery.com/hyl/index/login中,http表示协议的名称,www.ke ...
- EntityFramework4.1开发
常见问题大概为这几个 一.ef4.1 codeFirst 修改表结构 增加字段等 EF code first需要重新生成库导致数据丢失的问题. 二.ef4.1 没有了edmx等复杂的东西 变得简单 干 ...
- 用win下的快捷键提高工作效率
常用的快捷键: WIN+D:显示桌面,再按一次还原桌面: WIN+R:打开运行,输入命令可以执行相应操作,输入路径可以打开对应路径,输入程序名称可以打开对应程序(前提是你打开的是windows下面的程 ...
- Android 手机号码格式验证
package com.app.android01 ; import android.app.Activity; import android.os.Bundle; import android.te ...
- iOS-RegexKitLite导入错误
RegexKitLite是什么? RegexKitLite是一个非常方便的处理正则表达式的第三方类库. 本身只有一个RegexKitLite.h和RegexKitLite.m 导入RegexKitLi ...
- 关于bitcode~
最近在做语音识别- 在真机调试的时候一直报 ld: '/Users/Chenglijuan/Documents/语音识别/lib/iflyMSC.framework/iflyMSC(IFlyRecog ...
- 关于touch事件对于性能的影响
第一次写博客随笔,废话不多说,直接进入正题. 最近一直专注于移动终端的开发,碰到了一个比较棘手的事情,就是touch事件,大家都知道,touch事件有几种,无非就是touchstart,touchmo ...
- qsort
/*** *qsort.c - quicksort algorithm; qsort() library function for sorting arrays * Copyright (c) Mic ...
- 【Android】 Android实现录音、播音、录制视频功能
智能手机操作系统IOS与Android平分天下(PS:WP与其他的直接无视了),而Android的免费招来了一大堆厂商分分向Android示好,故Android可能会有“较好”的前景. Android ...
- spring中的 classpath* 存在可移植性问题
classpath* 的可移植性问题,许多人都应该遇到过了.下面就是一个例子(使用的是spring4.1.5和mybatis3.2.8): <bean id="sqlSessionFa ...