jQuery是一款不可多得的非常优秀的javascript脚本开发库,而基于其上的很多插件也是非常规范和卓越的,如果错过这番美景真是太可惜了,比如datepicker这个插件。

一般MIS系统的前端,尤其是用户注册页面,都会有诸如“出身年月”的日期输入框,最简单的做法就是使用一个标签,这样做的弊端有很多:首先是与数据库字段类型的匹配、其次是输入日期的合法性如“13月”或者闰年等等问题,如果深入下去还有非常多的地方值得推敲。当前比较流行的做法是使用下拉菜单来构造,但是这样做无论交互性、复杂度和可移植性都不尽如人意,因为至少需要构建3个联动的下拉菜单,需要自己编写大量的脚本处理日期合法性。

datepicker带来了美好的春天,先看看使用默认样式时它的样子:

完全GUI般的用户体验,炫目的动态展现效果,精确的日期控制和高度的灵活的参数配置,这一切使得datepicker受到众多开发者的青睐,其中包括大名鼎鼎的google,在其google calendar项目中就使用了这个脚本,有兴趣可以去看看。顺便啰嗦一句,上图的默认效果,在javascript中,用户只需写一句话就可以实现了,怎么样,心动了吧,follow me:

1.下载jQuery核心文件就不用说了吧,datepicker是轻量级插件,只需jQuery的min版本就行了,然后下载datepicker(内含jQuery1.2.6_min),您也可以到官方网站下载:http://marcgrabanski.com/pages/code/jquery-ui-datepicker。

2.在HTML中引用下载下来的两个js:

3.在HTML中引入默认样式表文件,这个文件也在刚刚的压缩包中,如果在官网下载,首页就有这个CSS文件下载,也可选择其他皮肤的CSS:

4.在HTML中插入文本域,最好设置成只读,不接受用户的手动输入,防止格式混乱,以id标记好。

5.编写js代码,实现最终效果。

$(document).ready(function() {

$('#dateinput').datepicker();

});

这样就基本完成一个日期输入文本域了,但是是英文的,根据不同的MIS系统,有的目标人群是上了年级的用户,建议将界面改成中文,可以如此操作,稍微改动一下刚刚的函数,like this:

$(document).ready(function() {

$('#dateinput').datepicker({

dateFormat: 'yy-mm-dd', //日期格式,自己设置

buttonImage: 'calendar.gif', //按钮的图片路径,自己设置

buttonImageOnly: true, //Show an image trigger without any button.

showOn: 'both',//触发条件,both表示点击文本域和图片按钮都生效

yearRange: '1990:2008',//年份范围

clearText:'清除',//下面的就不用详细写注释了吧,呵呵,都是些文本设置

closeText:'关闭',

prevText:'前一月',

nextText:'后一月',

currentText:' ',

monthNames:['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月'],

});

});

OK,大功告成,我根据自己的要求,写的页面的代码如下,仅供参考,自己尝试一下吧:

无标题文档

$(document).ready(function() {

var yearFrom=new Date().getYear()-60+1900;

var yearTo=new Date().getYear()-18+1900;

$('#dateinput').datepicker({

dateFormat: 'yy-mm-dd',

buttonImage: 'calendar.gif',

buttonImageOnly: true,

showOn: 'both',

yearRange: yearFrom+':'+yearTo,

clearText:'清除',

closeText:'关闭',

prevText:'前一月',

nextText:'后一月',

currentText:' ',

monthNames:['1月','2月','3月','4月','5月','6月','7月','8月','9月','10月','11月','12月'],

});

});

以上就是关于jQuery日历插件datepicker用法详细介绍,希望对大家的学习有所帮助。

html中字段是日期控件,jQuery日历插件datepicker用法详解相关推荐

  1. jquery日历插件daterangepicker全面详解汇总

    引入插件库 <script src="https://cdn.jsdelivr.net/jquery/latest/jquery.min.js"></script ...

  2. ActiveX控件打包、签名、嵌入详解

    ActiveX控件打包.签名.嵌入详解 前言 在我们的一个项目中,使用到了大华网络监控摄像头枪机,网络上下载了其ActiveX插件,但是发现其所提供的类库没有打包处理.这就导致我们每次给用户安装的时候 ...

  3. 在jsp页面中使用My97DatePicker日期控件

    直接看图看代码! My97DatePicker日期控件是一个功能非常强大的日期插件,功能丰富,调用方便,配置也很灵活!至于该日期插件为什么要叫My97DatePicker这个名字呢?这个你们要去问作者 ...

  4. 公司--页面调用日期控件 WdatePicker日历控件使用方法

    <td style="width:120px;"><input type="text" name="lpd_<%=prodTa ...

  5. python中values是什么意思_Python values()与itervalues()的用法详解

    dict 对象有一个 values() 方法,这个方法把dict转换成一个包含所有value的list,这样,我们迭代的就是 dict的每一个 value: d = { 'Adam': 95, 'Li ...

  6. linux中grep命令 菜鸟教程,linux grep正则表达式与grep用法详解

    需要大家牢记:正则表达式与通配符不一样,它们表示的含义并不相同 正则表达式只是字符串的一种描述,只有和支持正则表达式的工具相结合才能进行字符串处理.本文以grep为例来讲解正则表达式. grep命令 ...

  7. 如何在excel中快速使用日期控件?

    前两天在收集员工放假信息的时候,想直接通过选择而不是输入日期的方式填日期.找到一个需要通过开发工具导入控件的方式来实现,没成功.后面找了一个比较临时的方式,很好用,几乎没难度,对excel也没什么要求 ...

  8. Angularjs 中使用 layDate 日期控件

    为什么80%的码农都做不了架构师?>>>    layDate 控件地址:http://laydate.layui.com/ 12 3 4 5 6 app.directive('de ...

  9. vb mysql加载控件_VB如何连接ACCESS数据库详解

    首先有一点要注意,数据库的使用与我们以往所使用的文本文件不同.例如我们使用文本文件,来记录各种有用的数据.那么大致有以下几步: 读取文件 -- 格式化数据 -- 关闭文件 -- 使用数据 如果数据量较 ...

最新文章

  1. 成员变量和成员函数分开存储
  2. Linux之curl命令使用详解—网络故障定位(五)
  3. 用平常心去对待不平常的事
  4. tf 如何进行svd_Tensorflow快餐教程(6) - 矩阵分解
  5. HTML+CSS+JS实现 ❤️酷炫情人节爱心动画特效❤️
  6. 解决linux下fflush(stdin)无效
  7. Flutter中富文件标签的解决方案
  8. RHEL6解决无法使用YUM源问题
  9. java多线程_Java多线程
  10. 解决libxml2不支持中文的问题
  11. 信号与线性系统分析(第四版,吴大正主编)——信号与系统
  12. 土建中级工程师考试用书电子版_湖南土建中级职称教材1.pdf
  13. teamviewer JAVA,安装teamviewer失败 更换本地源
  14. 2022年12个开源物联网平台对比(2022年9月20日更新)
  15. RK3288 Android5.1 隐藏 蓝牙网络共享与移动网络设置项
  16. Linux:搭建GIT服务,Linux中使用git,git基础命令,和原理
  17. 苹果商店如何申请退款
  18. 里氏代换原则(The Liskov Substitution Principle)
  19. Codeforces 712A. Memory and Crow
  20. 网络安全防护措施有哪些?

热门文章

  1. WGAN-GP 学习笔记
  2. C语言程序的内存分配方式
  3. 剑指offer 链表中倒数第k个节点
  4. SELinux基本概念及基本配置
  5. Go语言操作MySQL
  6. 数据湖之iceberg系列(四)iceberg-spark编程
  7. ArrayBlockingQueue跟LinkedBlockingQueue的区别
  8. 性能监控/优化系列——JVM监控/调优
  9. 使用PuTTY、Xshell远程连接Linux,密钥认证连接
  10. UVA 10069 Distinct Subsequences(DP)