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

使用:$( "#datepicker" ).datepicker();

$.datepicker.setDefaults( settings ) - 全局设置日期选择插件的参数.
$.datepicker.formatDate( format, date, settings ) - 格式化显示的日期字符串
$.datepicker.iso8601Week( date ) - 给出一个日期,确实他是一年中的第几周
$.datepicker.parseDate( format, value, settings ) - 按照指定格式获取日期字符串 changeYear和changeMonth为true时可以下拉框选择年份和月份。
设置格式:
The format for parsed and displayed dates. For a full list of the possible formats see the formatDate function.

Code examples:

Initialize the datepicker with the dateFormat option specified:

1
2
3
$( ".selector" ).datepicker({
dateFormat: "yy-mm-dd"
});

Get or set the dateFormat option, after initialization:

1
2
3
4
5
// Getter
var dateFormat = $( ".selector" ).datepicker( "option", "dateFormat" );
 
// Setter
$( ".selector" ).datepicker( "option", "dateFormat", "yy-mm-dd" );
重要方法:

beforeShowType: FunctionElement input, Object inst )

Default: null
A function that takes an input field and current datepicker instance and returns an options object to update the datepicker with. It is called just before the datepicker is displayed.
 

onChangeMonthYearType: FunctionInteger year, Integer month, Object inst )

Default: null
Called when the datepicker moves to a new month and/or year. The function receives the selected year, month (1-12), and the datepicker instance as parameters. this refers to the associated input field.
 
this同beforeShow的input一样。

datepicker的中文汉化设置:
jQuery(function($){
$.datepicker.regional['zh-CN'] = {
closeText: '关闭',
prevText: '<上月',
nextText: '下月>',
currentText: '今天',
monthNames: ['1月','2月','3月','4月','5月','6月',
'7月','8月','9月','10月','11月','12月'],
monthNamesShort: ['1月','2月','3月','4月','5月','6月',
'7月','8月','9月','10月','11月','12月'],
dayNames: ['星期日','星期一','星期二','星期三','星期四','星期五','星期六'],
dayNamesShort: ['周日','周一','周二','周三','周四','周五','周六'],
dayNamesMin: ['日','一','二','三','四','五','六'],
weekHeader: '周',
dateFormat: 'yy-mm-dd',
firstDay: 1,
isRTL: false,
showMonthAfterYear: true,
yearSuffix: '年', changeYear:true,
changeMonth:true,
showButtonPanel: true,
minDate:'2013-01-01',
};
$.datepicker.setDefaults($.datepicker.regional['zh-CN']);
});

问题:

jquery-ui datepicker的z-index 太小被覆盖

如何置jquery-ui datepicker的z-index值的呢?

分析datepicker的源码,发现弹出的日期选择框的z-index值是:$(input).zIndex() + 1。继续分析$.zIndex()函数(在jquery-ui.js文件中),发现当input的css position值为absolute、fixed或relative时,$.zIndex()函数返回的值就是input css 的z-index值。

例如:<input type="text" name="add_date" id="add_date" style="z-index:1000;position:relative;" value="" />这样设置时,弹出的jquery-ui datepicker日期选择框的z-index值就设置为1001了。

不想设置input,有没有其他办法呢?

一种看似投机的办法:

beforeShow: function () { 
setTimeout( 
function () { 
 $('#ui-datepicker-div').css("z-index", 15); 
 }, 10 
);

参考:http://bugs.jqueryui.com/ticket/5479#comment:4

在buttonPanel增加自定义button:

 $('#control-date').datepicker({
beforeShow: function(input, ui) {
setTimeout(function() {
var buttonPane = $( input ).datepicker( "widget" ).find( ".ui-datepicker-buttonpane" );
var button1 = $( "<button>", {
text: "今天",
click: function() {
var today = new Date();
$( input ).datepicker( "setDate", today);
setTimeout(function(){
$( input ).datepicker( 'hide');
},10);
}
});
var button2 = $( "<button>", {
text: "明天",
click: function() {
$( input ).datepicker( "setDate", '+1d');
setTimeout(function(){
$( input ).datepicker( 'hide');
},10);
}
});
var button3 = $( "<button>", {
text: "本周五",
click: function() {
var today=new Date();
var weekday=today.getDay();
var friday=new Date(1000*60*60*24*(5-weekday) + today.getTime());
$( input ).datepicker( "setDate", friday);
setTimeout(function(){
$( input ).datepicker( 'hide');
},10);
}
});
var button4 = $( "<button>", {
text: "清空",
click: function() {
$.datepicker._clearDate( input );
}
});
if( buttonPane ) {
buttonPane.html('');
button1.appendTo( buttonPane ).addClass("ui-datepicker-current ui-state-default ui-priority-primary ui-corner-all ui-datepicker-button");
button2.appendTo( buttonPane ).addClass("ui-datepicker-current ui-state-default ui-priority-primary ui-corner-all ui-datepicker-button");
button3.appendTo( buttonPane ).addClass("ui-datepicker-current ui-state-default ui-priority-primary ui-corner-all ui-datepicker-button");
button4.appendTo( buttonPane ).addClass("ui-state-default ui-priority-primary ui-corner-all ui-datepicker-button");
}
},1); //end setTimeout
},
showButtonPanel: true,
});
 参考:http://ifxoxo.com/jquery-datepicker-add-button.html
在stackoverflow上的http://stackoverflow.com/questions/4598850/how-do-you-add-buttons-to-a-jquery-datepicker-in-the-button-panel 回答也跟上面一样。

jquery datepicker日历控件的更多相关文章

  1. jquery插件——日历控件

    今天在网上有看到一个jquery插件——日历控件,不过之前也在柯乐义的网站上看到了(http://keleyi.com/ 推荐下) 这个插件看着比较大气,所以干脆也分享下,以后自己也好用一点儿 1.页 ...

  2. amazeui datepicker日历控件 设置默认当日

    amazeui datepicker日历控件 设置默认当日 背景: 最近在做一个系统的时候,前台需要选择日期,传给后台进行处理,每次都需要通过手动点击组件,选择日期,这样子很不好,所以我想通过程序自动 ...

  3. 如何使用jqueryUi的datepicker日历控件?

    参考: http://www.jb51.net/article/85007.htm 这里的日历控件是, 基于jquery的jqureyui中的一个 widget. 需要js 文件: 外部的js文件, ...

  4. jQuery Datepicker日期控件

    datepicker可以为bootstrap添加一个事件选择控件,适用于任何需要调用的场合,支持多种事件格式输出(比如:dd, d, mm, m, yyyy, yy等),是制作网页不可缺失的插件. R ...

  5. JQuery datepicker 日期控件设置

    datepicker控件可通过参数设置进行语言切换,以下可实现,系统所有日期控件默认为中文,在特定页面或者特定条件下可切换成英语!~ HTML: <!DOCTYPE html> <h ...

  6. 【前端控件】JQuery datepicker 日期控件设置

    datepicker控件可通过参数设置进行语言切换,以下可实现,系统所有日期控件默认为中文,在特定页面或者特定条件下可切换成英语!~ HTML: <!DOCTYPE html> <h ...

  7. jquery M97-datepicker日历控件

    My97DatePicker是一款非常灵活好用的日期控件.使用非常简单. 1.下载My97DatePicker组件包 2.在页面中引入该组件js文件:     <script type=&quo ...

  8. jquery datepicker日期控件用法

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.c ...

  9. jquery easyui 日历控件和文本框结合使用生成日期

    html部分---等待接收所选日期的文本框 <td> <input name='input_date' required class='easyui-textbox' id='xiw ...

随机推荐

  1. JAVA Hibersap 框架调用 SAP

    In this example we will create a simple Maven project which uses Hibersap to call a function in SAP ...

  2. C++程序设计(第4版)读书笔记_指针、数组与引用

    void * 函数指针和指向类成员的指针不能被赋给void * 字符串字面值常量 #include <iostream> using namespace std; void f() { c ...

  3. Windows手动安装MySQL

    由于MySQL 5.6(也许5.5)以后去掉了Server Instance Configuration Wizard(服务实例配置向导),于是msi版变成了和zip版一样,要手动配置. * 假定安装 ...

  4. Redis遍历所有key的两个命令 -- KEYS 和 SCAN

    当我们需要遍历Redis所有key或者指定模式的key时,首先想到的是KEYS命令: KEYS pattern   官网对于KEYS命令有一个提示: KEYS 的速度非常快,例如,Redis在一个有1 ...

  5. virtualbox 虚拟机硬盘扩容

    转自: http://jingyan.baidu.com/article/425e69e6aeede8be14fc1675.html

  6. C# 6新特性简单总结

    最近在看<C#高级编程 C# 6&.NET Core 1.0>,会做一些读书笔记,也算对知识的总结与沉淀了. 1.静态的using声明 静态的using声明允许调用静态方法时不使用 ...

  7. MySQL的limit子句

    1.理解: limit用来取结果集中的固定几条记录 2.参数: limit offset,pagesize offset:偏移量,为0时,可以省略 pagesize:每页显示的行数,通常是固定的 0表 ...

  8. iOS面试题--Model层--沙盒的目录结构是怎么样的?各自一般用于什么场合?

    沙盒的目录结构是怎么样的?各自一般用于什么场合? 一.iOS沙盒机制 iOS的应用只能访问为该应用创建的区域,不可访问其他区域,应用的其他非代码文件都存在此目录下,包括图片,属性文件plist,bun ...

  9. java中訪问修饰符

    较之c++ 中 public,proctected, private 三种訪问控制, java多了默认訪问控制. java中四种訪问控制权限 简单描写叙述为一下四句: 1)private 仅本类可见 ...

  10. Python抓取豆瓣《白夜追凶》的评论并且分词

    最近网剧<白夜追凶>在很多朋友的推荐下,开启了追剧模式,自从琅琊榜过后没有看过国产剧了,此剧确实是良心剧呀!一直追下去,十一最后两天闲来无事就抓取豆瓣的评论看一下 相关代码提交到githu ...