(網頁)jQuery UI 實例 - 日期選擇器(Datepicker)

默認功能

日期選擇器(Datepicker)綁定到一個標準的表單 input 字段上。把焦點移到 input 上(點擊或者使用 tab 鍵),在一個小的覆蓋層上打開一個交互日曆。選擇一個日期,點擊頁面上的任意地方(輸入框即失去焦點),或者點擊 Esc 鍵來關閉。若是選擇了一個日期,則反饋顯示爲 input 的值。css

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery UI 日期選擇器(Datepicker) - 默認功能</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.9.1.js"></script>
  <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
  <link rel="stylesheet" href="http://jqueryui.com/resources/demos/style.css">
  <script>
  $(function() {
    $( "#datepicker" ).datepicker();
  });
  </script>
</head>
<body>
 
<p>日期:<input type="text" id="datepicker"></p>
 
 
</body>
</html>
查看演示

  

動畫

當打開或關閉 datepicker 時使用不一樣的動畫。從下拉框中選擇一個動畫,而後在輸入框中點擊來查看它的效果。您可使用三個標準動畫中任意一個,或者使用 UI 特效中的任意一個。html

<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>jQuery UI 日期選擇器(Datepicker) - 動畫</title>
    <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
    <script src="//code.jquery.com/jquery-1.9.1.js"></script>
    <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
    <link rel="stylesheet" href="http://jqueryui.com/resources/demos/style.css">
    <script>
    $(function() {
        $( "#datepicker" ).datepicker();
        $( "#anim" ).change(function() {
            $( "#datepicker" ).datepicker( "option", "showAnim", $( this ).val() );
        });
    });
    </script>
</head>
<body>

<p>日期:<input type="text" id="datepicker" size="30"></p>

<p>動畫:<br>
    <select id="anim">
        <option value="show">Show (默認)</option>
        <option value="slideDown">滑下</option>
        <option value="fadeIn">淡入</option>
        <option value="blind">Blind (UI 百葉窗特效)</option>
        <option value="bounce">Bounce (UI 反彈特效)</option>
        <option value="clip">Clip (UI 剪輯特效)</option>
        <option value="drop">Drop (UI 降落特效)</option>
        <option value="fold">Fold (UI 摺疊特效)</option>
        <option value="slide">Slide (UI 滑動特效)</option>
        <option value="">無</option>
    </select>
</p>


</body>
</html>

  

其餘月份的日期

datepicker 能夠顯示其餘月份的日期,這些日期也能夠設置成可選擇的。jquery

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery UI 日期選擇器(Datepicker) - 其餘月份的日期</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.9.1.js"></script>
  <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
  <link rel="stylesheet" href="http://jqueryui.com/resources/demos/style.css">
  <script>
  $(function() {
    $( "#datepicker" ).datepicker({
      showOtherMonths: true,
      selectOtherMonths: true
    });
  });
  </script>
</head>
<body>
 
<p>日期:<input type="text" id="datepicker"></p>
 
 
</body>
</html>

  

顯示按鈕欄

經過布爾值的 showButtonPanel 選項爲選擇當天日期顯示一個"Today"按鈕,爲關閉日曆顯示一個"Done"按鈕。默認狀況下,當按鈕欄顯示時會啓用每一個按鈕,可是按鈕可經過其餘的選項進行關閉。按鈕文本可自定義。ide

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery UI 日期選擇器(Datepicker) - 顯示按鈕欄</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.9.1.js"></script>
  <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
  <link rel="stylesheet" href="http://jqueryui.com/resources/demos/style.css">
  <script>
  $(function() {
    $( "#datepicker" ).datepicker({
      showButtonPanel: true
    });
  });
  </script>
</head>
<body>
 
<p>日期:<input type="text" id="datepicker"></p>
 
 
</body>
</html>

  

內聯顯示

datepicker 是嵌套在頁面中顯示,而不是顯示在一個覆蓋層中。只須要簡單地在 div 上調用 .datepicker() 便可,而不是在 input 上調用。動畫

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery UI 日期選擇器(Datepicker) - 內聯顯示</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.9.1.js"></script>
  <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
  <link rel="stylesheet" href="http://jqueryui.com/resources/demos/style.css">
  <script>
  $(function() {
    $( "#datepicker" ).datepicker();
  });
  </script>
</head>
<body>
 
日期:<div id="datepicker"></div>
 
 
</body>
</html>

 

顯示月份 & 年份菜單

顯示月份和年份的下拉框,而不是顯示靜態的月份/年份標題,這樣便於在大範圍的時間跨度上導航。添加布爾值 changeMonth和 changeYear 選項便可。ui

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery UI 日期選擇器(Datepicker) - 顯示月份 & 年份菜單</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.9.1.js"></script>
  <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
  <link rel="stylesheet" href="http://jqueryui.com/resources/demos/style.css">
  <script>
  $(function() {
    $( "#datepicker" ).datepicker({
      changeMonth: true,
      changeYear: true
    });
  });
  </script>
</head>
<body>
 
<p>日期:<input type="text" id="datepicker"></p>
 
 
</body>
</html>

  

顯示多個月份

設置 numberOfMonths 選項爲一個整數 2,或者大於 2 的整數,來在一個 datepicker 中顯示多個月份。this

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery UI 日期選擇器(Datepicker) - 顯示多個月份</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.9.1.js"></script>
  <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
  <link rel="stylesheet" href="http://jqueryui.com/resources/demos/style.css">
  <script>
  $(function() {
    $( "#datepicker" ).datepicker({
      numberOfMonths: 3,
      showButtonPanel: true
    });
  });
  </script>
</head>
<body>
 
<p>日期:<input type="text" id="datepicker"></p>
 
 
</body>
</html>
查看演示

  

格式化日期

以各類方式顯示日期反饋。從下拉框中選擇一種日期格式,而後在輸入框中點擊並選擇一個日期,查看所選格式的日期顯示。code

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery UI 日期選擇器(Datepicker) - 格式化日期</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.9.1.js"></script>
  <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
  <link rel="stylesheet" href="http://jqueryui.com/resources/demos/style.css">
  <script>
  $(function() {
    $( "#datepicker" ).datepicker();
    $( "#format" ).change(function() {
      $( "#datepicker" ).datepicker( "option", "dateFormat", $( this ).val() );
    });
  });
  </script>
</head>
<body>
 
<p>日期:<input type="text" id="datepicker" size="30"></p>
 
<p>格式選項:<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="'day' d 'of' MM 'in the year' yy">With text - 'day' d 'of' MM 'in the year' yy</option>
  </select>
</p>
 
 
</body>
</html>

  

圖標觸發器

點擊輸入框旁邊的圖標來顯示 datepicker。設置 datepicker 在得到焦點時打開(默認行爲),或者在點擊圖標時打開,或者在得到焦點/點擊圖標時打開。orm

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery UI 日期選擇器(Datepicker) - 圖標觸發器</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.9.1.js"></script>
  <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
  <link rel="stylesheet" href="http://jqueryui.com/resources/demos/style.css">
  <script>
  $(function() {
    $( "#datepicker" ).datepicker({
      showOn: "button",
      buttonImage: "images/calendar.gif",
      buttonImageOnly: true
    });
  });
  </script>
</head>
<body>
 
<p>日期:<input type="text" id="datepicker"></p>
 
 
</body>
</html>

  

本地化日曆

本地化 datepicker 日曆語言和格式(默認爲 English / Western 格式)。datepicker 包含對從右到左讀取的語言的內建支持,好比 Arabic 和 Hebrew。htm

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery UI 日期選擇器(Datepicker) - 本地化日曆</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.9.1.js"></script>
  <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
  <script src="http://jqueryui.com/resources/demos/datepicker/jquery.ui.datepicker-ar.js"></script>
  <script src="http://jqueryui.com/resources/demos/datepicker/jquery.ui.datepicker-fr.js"></script>
  <script src="http://jqueryui.com/resources/demos/datepicker/jquery.ui.datepicker-he.js"></script>
  <script src="http://jqueryui.com/resources/demos/datepicker/jquery.ui.datepicker-zh-TW.js"></script>
  <link rel="stylesheet" href="http://jqueryui.com/resources/demos/style.css">
  <script>
  $(function() {
    $( "#datepicker" ).datepicker( $.datepicker.regional[ "fr" ] );
    $( "#locale" ).change(function() {
      $( "#datepicker" ).datepicker( "option",
        $.datepicker.regional[ $( this ).val() ] );
    });
  });
  </script>
</head>
<body>
 
<p>日期:<input type="text" id="datepicker"> 
  <select id="locale">
    <option value="ar">Arabic (‫(العربية</option>
    <option value="zh-TW">Chinese Traditional (繁體中文)</option>
    <option value="">English</option>
    <option value="fr" selected="selected">French (Français)</option>
    <option value="he">Hebrew (‫(עברית</option>
  </select></p>
 
 
</body>
</html>

  

填充另外一個輸入框

使用 altField 和 altFormat 選項,不管什麼時候選擇日期,會在另外一個輸入框中填充帶有必定格式的日期。這個功能經過對電腦友好性的日期進一步加工後,向用戶呈現一個用戶友好性的日期。

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery UI 日期選擇器(Datepicker) - 填充另外一個輸入框</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.9.1.js"></script>
  <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
  <link rel="stylesheet" href="http://jqueryui.com/resources/demos/style.css">
  <script>
  $(function() {
    $( "#datepicker" ).datepicker({
      altField: "#alternate",
      altFormat: "DD, d MM, yy"
    });
  });
  </script>
</head>
<body>
 
<p>日期:<input type="text" id="datepicker"> <input type="text" id="alternate" size="30"></p>
 
 
</body>
</html>

  

限制日期範圍

經過 minDate 和 maxDate 選項限制可選擇的日期範圍。設置起止日期爲實際的日期(new Date(2009, 1 - 1, 26)),或者爲與今天的一個數值偏移(-20),或者爲一個週期和單位的字符串('+1M +10D')。若是設置爲字符串,使用 'D' 表示天,使用 'W' 表示周,使用 'M' 表示月,使用 'Y' 表示年。

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery UI 日期選擇器(Datepicker) - 限制日期範圍</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.9.1.js"></script>
  <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
  <link rel="stylesheet" href="http://jqueryui.com/resources/demos/style.css">
  <script>
  $(function() {
    $( "#datepicker" ).datepicker({ minDate: -20, maxDate: "+1M +10D" });
  });
  </script>
</head>
<body>
 
<p>日期:<input type="text" id="datepicker"></p>
 
 
</body>
</html>
查看演示

  

選擇一個日期範圍

選擇要搜索的日期範圍。

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery UI 日期選擇器(Datepicker) - 選擇一個日期範圍</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.9.1.js"></script>
  <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
  <link rel="stylesheet" href="http://jqueryui.com/resources/demos/style.css">
  <script>
  $(function() {
    $( "#from" ).datepicker({
      defaultDate: "+1w",
      changeMonth: true,
      numberOfMonths: 3,
      onClose: function( selectedDate ) {
        $( "#to" ).datepicker( "option", "minDate", selectedDate );
      }
    });
    $( "#to" ).datepicker({
      defaultDate: "+1w",
      changeMonth: true,
      numberOfMonths: 3,
      onClose: function( selectedDate ) {
        $( "#from" ).datepicker( "option", "maxDate", selectedDate );
      }
    });
  });
  </script>
</head>
<body>
 
<label for="from">從</label>
<input type="text" id="from" name="from">
<label for="to">到</label>
<input type="text" id="to" name="to">
 
 
</body>
</html>

  

顯示一年中的第幾周

datepicker 能夠顯示一年中的第幾周。默認的計算是按照 ISO 8601 定義:每週從星期一開始,每一年的第一週包含該年的第一個星期四。這就意味着一年中的一些天多是屬於另外一年中的周。

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery UI 日期選擇器(Datepicker) - 顯示一年中的第幾周</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.9.1.js"></script>
  <script src="//code.jquery.com/ui/1.10.4/jquery-ui.js"></script>
  <link rel="stylesheet" href="http://jqueryui.com/resources/demos/style.css">
  <script>
  $(function() {
    $( "#datepicker" ).datepicker({
      showWeek: true,
      firstDay: 1
    });
  });
  </script>
</head>
<body>
 
<p>日期:<input type="text" id="datepicker"></p>
 
 
</body>
</html>
查看演示

  jQuery的datepicker變成中文:jquery.ui.datepicker-zh-CN.js通常會找這個js,我把這個js的代碼拿出來,之後就不須要再在網上找啦:

jQuery(function($){  
    $.datepicker.regional['zh-CN'] = {  
        closeText: '關閉',  
        prevText: '<上月',  
        nextText: '下月>',  
        currentText: '今天',  
        monthNames: ['一月','二月','三月','四月','五月','六月',  
        '七月','八月','九月','十月','十一月','十二月'],  
        monthNamesShort: ['一','二','三','四','五','六',  
        '七','八','九','十','十一','十二'],  
        dayNames: ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'],  
        dayNamesShort: ['週日','週一','週二','週三','週四','週五','週六'],  
        dayNamesMin: ['日','一','二','三','四','五','六'],  
        weekHeader: '周',  
        dateFormat: 'yy-mm-dd',  
        firstDay: 1,  
        isRTL: false,  
        showMonthAfterYear: true,  
        yearSuffix: '年'};  
    $.datepicker.setDefaults($.datepicker.regional['zh-CN']);  
});  

  以上除了百度菜鳥教程的,還有本身百度的。多敲,多總結整理。

相關文章
相關標籤/搜索