Jquery 日期选择控件

来源:互联网 发布:outdoorvoices淘宝 编辑:程序博客网 时间:2024/06/11 22:01

我们在写HTML时,有时候要用到输入日期的文本框,比如:注册信息时,这时我们输入日期大多需要手动输入,这样显得很不方便,并且传到后台时有时候格式不对,有没有控件来让输入日期更方便呢?
在这里我向大家介绍一个工具,它可以帮助我们很方便的完成输入日期,并可以自定义格式
The jQuery Plugin Registry
这个网站有许多的jquery 插件我们的日期插件就在其中

  • 我们搜索 jQuery UI Datepicker

第一个就是我们要用的

  • 进去选择Try a Demo 让我们先看看模版
    这里写图片描述
    进去之后我们在示例上点击文本框,我们会发现出现了日期选择框,点击之后结果为:
    这里写图片描述
    示例程序下面就是代码:
<!doctype html><html lang="en"><head>  <meta charset="utf-8">  <title>jQuery UI Datepicker - Default functionality</title>  <link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">  <script src="//code.jquery.com/jquery-1.10.2.js"></script>  <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>  <link rel="stylesheet" href="/resources/demos/style.css">  <script>  $(function() {    $( "#datepicker" ).datepicker();  });  </script></head><body><p>Date: <input type="text" id="datepicker"></p></body></html>

其中一下几行就是所要导入的库文件

  <link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">  <script src="//code.jquery.com/jquery-1.10.2.js"></script>  <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>  <link rel="stylesheet" href="/resources/demos/style.css">

我们在javaweb开发中一般输入日期格式为 yyyy-mm-dd
在日期控件上怎么做呢?
这里写图片描述
选择标注的链接,示例程序就变成了可以自定义格式的代码了,以下是yyyy-mm-dd 格式的
这里写图片描述

<!doctype html><html lang="en"><head>  <meta charset="utf-8">  <title>jQuery UI Datepicker - Format date</title>  <link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">  <script src="//code.jquery.com/jquery-1.10.2.js"></script>  <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>  <link rel="stylesheet" href="/resources/demos/style.css">  <script>  $(function() {    $( "#datepicker" ).datepicker();    $( "#format" ).change(function() {      $( "#datepicker" ).datepicker( "option", "dateFormat", $( this ).val() );    });  });  </script></head><body><p>Date: <input type="text" id="datepicker" size="30"></p><p>Format options:<br>  <select id="format">    <option value="mm/dd/yy">Default - mm/dd/yy</option>    <option value="yy-mm-dd">ISO 8601 - yy-mm-dd</option>    <option value="d M, y">Short - d M, y</option>    <option value="d MM, y">Medium - d MM, y</option>    <option value="DD, d MM, yy">Full - DD, d MM, yy</option>    <option value="&apos;day&apos; d &apos;of&apos; MM &apos;in the year&apos; yy">With text - 'day' d 'of' MM 'in the year' yy</option>  </select></p></body></html>

在以下代码中我们看到$( “#datepicker” ).datepicker();函数出现两次,那么第一次的能不能去除呢?

$(function() {    $( "#datepicker" ).datepicker();    $( "#format" ).change(function() {      $( "#datepicker" ).datepicker( "option", "dateFormat", $( this ).val() );    });  });

经过实验我们发现去过去除第一个的话,整个日期控件就不起作用了,
那是因为option参数必须在$( “#datepicker” ).datepicker();调用后才起作用
如果我们不使用option参数我们可以使用以下方式设置格式

  <script type="text/javascript">$(function(){     $( "#date" ).datepicker({         dateFormat: "yy-mm-dd"             });});  </script>

我们同样可以一同样的方式设置语言:
这里写图片描述
我们需要加入以下语言文件以供使用

  <script src="datepicker-ar.js"></script>  <script src="datepicker-fr.js"></script>  <script src="datepicker-he.js"></script>  <script src="datepicker-zh-TW.js"></script>

当选择语言为中文时:
界面显示的文字就变成了汉字
这里写图片描述

语言和格式我们分别会使用了,那我们把它们整合到一块代码该怎么写呢?
很简单 :

 <link rel="stylesheet" href="../common/jquery_date/jquery-ui.css">  <script src="../common/bs/js/jquery.min.js"></script>  <script src="../common/jquery_date/jquery-ui.js"></script>  <link rel="stylesheet" href="/resources/demos/style.css">  <script src="../common/jquery_date/datepicker-zh-CN.js"></script>  <script>  $(function() {    $("#datepicker").datepicker();      //option 是要datepicker方法已经被调用一次完成初始化后才可以使用的    $( "#datepicker" ).datepicker("option", "dateFormat","yy-mm-dd",                   $.datepicker.regional[ "zh-CN" ] );  });  </script>

效果如图:
这里写图片描述

0 0