jquery – 有事件的Datepicker?

前端之家收集整理的这篇文章主要介绍了jquery – 有事件的Datepicker?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
有没有一个 jquery插件可以让我有一个像矩形的小日历​​,就像在日期选择器和一些日期将是不同的颜色.当我用鼠标查看日期时,会弹出一个弹出窗口,说明当天安排了什么事件.当然我会用事件填充事件数组;-)

我找到的只是日期采摘(小)或日历(全屏大).我的网页需要的是那里有一个小日历和一个简单的鼠标悬停,它会显示我希望它显示的文本.

这样的事情存在吗?

解决方法

正如其他人所指出的那样,这可以通过jQueryUI的 datepicker实现.

Datepicker具有一些内置功能,可以帮助您实现目标.具体来说,beforeShowDay事件将让您自定义每天的外观和行为,而不需要太多代码

>创建一个包含可以从datepicker的事件处理程序引用的事件的对象:

var Event = function(text,className) {
    this.text = text;
    this.className = className;
};

var events = {};
events[new Date("02/14/2011")] = new Event("Valentines Day","pink");
events[new Date("02/18/2011")] = new Event("Payday","green");

代码只创建一个对象,其中“keys”是事件日期,“values”是事件数据.
>要使datepicker小部件始终显示(例如,不需要输入),只需将小部件应用于div:

HTML:

<div id="dates"></div>

JavaScript的:

$("#dates").datepicker({....});

>点击beforeShowDay事件,并返回相应的数组. datepicker将自动应用您指定的工具提示和类.这是我们上面定义的Event对象派上用场的地方:

$("#dates").datepicker({
    beforeShowDay: function(date) {
        var event = events[date];
        if (event) {
            return [true,event.className,event.text];
        }
        else {
            return [true,'',''];
        }
    }
});

这可能是最棘手的部分. beforeShowDay事件处理程序希望您返回一个如下结构的数组:

[ 0 ] equal to true/false indicating
whether or not this date is
selectable,[ 1 ] equal to a CSS class
name(s) or ” for the default
presentation,and [ 2 ] an optional
popup tooltip for this date.

所以我们正在做的是在传递给处理beforeShowDay事件的函数的日期查找事件,并从事件对象返回数据(如果存在).

它看起来很多,但是当你把它们放在一起时它并不是太糟糕.看看这里的例子:http://jsfiddle.net/andrewwhitaker/rMhVz/1/

注意CSS类必须使用!important来覆盖datepicker的默认背景,并实际应用于日期trs内的a标签

猜你在找的jQuery相关文章