1. 程式人生 > >如何使用日曆外掛datepicker

如何使用日曆外掛datepicker

演示地址:http://jqueryui.com/datepicker/

下載地址:http://jqueryui.com/download/

使用jQuery ui首先需要引入jquery類庫,jQuery ui js指令碼和jQuery ui css樣式表。程式碼示例如下:

<scriptsrc="jquery-1.7.1.js"></script>

<scriptsrc="jquery-ui.js"></script>

<linkrel="stylesheet"type="text/css"href="jquery-ui.css">

注:引入js

指令碼時,需先引入jQuery類庫,後引入jQuery ui指令碼

下面為實現步驟:

第一步  實現兩個datepicker元件。

  需要定義兩個input標籤,型別為text,並指定id屬性

HTML程式碼如下

開始日期:<input type="text" id="start">

結束日期:<input type="text" id="end">

  在js程式碼中得到兩個input元素的jQuery物件,並將其轉化為datepicker元件

Js程式碼如下:

  1. $(document).ready(function(){    
  2.     $("#start").datepicker();    
  3.    $("#end").datepicker();    
  4. });    

實現以上操作後,在頁面中點選文字框,如果出現datepicker則代表成功。

第二步  設定開始和結束日期

  當選擇開始日期的值後,則結束日期的最小值應該就是開始日期;同理,當選擇結束日期後,開始日期的最大值則應該是結束日期。我們可以利用datepicker中的onSelect屬性來設定當選擇指定日期後觸發的事件,通過該事件來指定對應的datepicker最小日期或最大日期。

Js程式碼如下:

  1. $("#start").datepicker({    
  2.    onSelect:function(dateText,inst){    
  3.       $("#end").datepicker("option","minDate",dateText);    
  4.    }    
  5. });    
  6. $("#end").datepicker({    
  7.    onSelect:function(dateText,inst){    
  8.        $("#start").datepicker("option","maxDate",dateText);    
  9.   }    
  10. });    

注:匿名函式中的dateText屬性為當前選擇日期的字串

實現全部功能的完全程式碼,如下:
  1. <!DOCTYPE html>
  2. <htmllang="en">
  3. <head>
  4.     <metacharset="UTF-8">
  5.     <title></title>
  6.     <scriptsrc="jquery.js"></script>
  7.     <scriptsrc="date/jquery-ui.min.js"></script>
  8.     <linkrel="stylesheet"type="text/css"href="date/jquery-ui.min.css">
  9. </head>
  10. <body>
  11.     開始日期:<inputtype="text"id="start">   結束日期:<inputtype="text"id="end">
  12. <script>
  13. $("#start").datepicker({  
  14.     onSelect:function(dateText,inst){  
  15.        $("#end").datepicker("option","minDate",dateText);   
  16.     }  
  17. });  
  18. $("#end").datepicker({  
  19.     onSelect:function(dateText,inst){  
  20.         $("#start").datepicker("option","maxDate",dateText);  
  21.     }  
  22. });   
  23. </script>
  24. </body>
  25. </html>
效果圖: