easyui1.3.2中使用1.3.6或1.4.x的calendar

王朝学院·作者佚名  2016-05-23
窄屏简体版  字體: 小  |  中  |  大  |  超大  

easyui1.3.2中使用1.3.6或1.4.x的calendar首先在1.3.2中calendar控件不支持日历某天的颜色进行改变,和自定义回调函数

NameTypeDescriptionDefaultwidth

number

The width of calendar component.

180

height

number

The height of calendar component.

180

fit

boolean

When true to set the calendar size fit it's parent container.

false

border

boolean

Defines if to show the border.

true

firstDay

number

Defines the first day of week. Sunday is 0, Monday is 1, ...

0

weeks

array

The list of week to be showed.

['S','M','T','W','T','F','S']

months

array

The list of month to be showed.

['Jan', 'Feb', 'Mar', 'APR', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']

year

number

The year of calendar. The example below shows how to create a calendar using the specified year and month.<div class="easyui-calendar" data-options="year:2012,month:6" />

current year(four digits)

month

number

The month of calendar.

current month, start with 1

current

Date

The current date.

current date

formatter

function(date)

The day formatter function, return the day value. This property is available since version 1.3.6.Code example:

$('#cc').calendar({formatter: function(date){return date.getDate();}})

styler

function(date)

The styler function for calendar days, return the inline style or CSS class. This property is available since version 1.3.6.Code example:

$('#cc').calendar({styler: function(date){if (date.getDay() == 1){return 'background-color:#ccc';// the function can return predefined css class and inline style// return {class:'r1', style:{'color:#fff'}};} else {return '';}}})

validator

function(date)

The validator function that is used to determine if a calendar day can be selected, return false to prevent from selecting a day. This property is available since version 1.3.6.Code example:

$('#cc').calendar({validator: function(date){if (date.getDay() == 1){return true;}else {return false;}}})

以上看出上面的有些方法和属性注明在1.3.6中使用 那我们使用以前的老版本怎么办?

因为页面上还有其它使用1.3.2的方法和属性。所以只有自己从easyui官方最新的插件包中查找了,经过整理了一下代码如下:

(function ($) { function _4ef(_4f0, _4f1) { var opts = $.data(_4f0, "calendar").options; var t = $(_4f0); if (_4f1) { $.extend(opts, { width: _4f1.width, height: _4f1.height }); } t._size(opts, t.parent()); t.find(".calendar-body")._outerHeight(t.height() - t.find(".calendar-header")._outerHeight()); if (t.find(".calendar-menu").is(":visible")) { _4f2(_4f0); } }; function init(_4f3) { $(_4f3).addClass("calendar").html("<div class=\"calendar-header\">" + "<div class=\"calendar-prevmonth\"></div>" + "<div class=\"calendar-nextmonth\"></div>" + "<div class=\"calendar-prevyear\"></div>" + "<div class=\"calendar-nextyear\"></div>" + "<div class=\"calendar-title\">" + "<span>Aprial 2010</span>" + "</div>" + "</div>" + "<div class=\"calendar-body\">" + "<div class=\"calendar-menu\">" + "<div class=\"calendar-menu-year-inner\">" + "<span class=\"calendar-menu-prev\"></span>" + "<span><input class=\"calendar-menu-year\" type=\"text\"></input></span>" + "<span class=\"calendar-menu-next\"></span>" + "</div>" + "<div class=\"calendar-menu-month-inner\">" + "</div>" + "</div>" + "</div>"); $(_4f3).find(".calendar-title span").hover(function () { $(this).addClass("calendar-menu-hover"); }, function () { $(this).removeClass("calendar-menu-hover"); }).click(function () { var menu = $(_4f3).find(".calendar-menu"); if (menu.is(":visible")) { menu.hide(); } else { _4f2(_4f3); } }); $(".calendar-prevmonth,.calendar-nextmonth,.calendar-prevyear,.calendar-nextyear", _4f3).hover(function () { $(this).addClass("calendar-nav-hover"); }, function () { $(this).removeClass("calendar-nav-hover"); }); //$(_4f3).find(".calendar-nextmonth").click(function () { // _4f5(_4f3, 1); //}); //$(_4f3).find(".calendar-prevmonth").click(function () { // _4f5(_4f3, -1); //}); //$(_4f3).find(".calendar-nextyear").click(function () { // _4f8(_4f3, 1); //}); //$(_4f3).find(".calendar-prevyear").click(function () { // _4f8(_4f3, -1); //}); $(_4f3).bind("_resize", function (e, _4f4) { if ($(this).hasClass("easyui-fluid") || _4f4) { _4ef(_4f3); } return false; }); }; function _4f5(_4f6, _4f7) { var opts = $.data(_4f6, "calendar").options; opts.month += _4f7; if (opts.month > 12) { opts.year++; opts.month = 1; } else { if (opts.month < 1) { opts.year--; opts.month = 12; } } show(_4f6); var menu = $(_4f6).find(".calendar-menu-month-inner"); menu.find("td.calendar-selected").removeClass("calendar-selected"); menu.find("td:eq(" + (opts.month - 1) + ")").addClass("calendar-selected"); }; function _4f8(_4f9, _4fa) { var opts = $.data(_4f9, "calendar").options; opts.year += _4fa; show(_4f9); var menu = $(_4f9).find(".calendar-menu-year"); menu.val(opts.year); }; function _4f2(_4fb) { var opts = $.data(_4fb, "calendar").options; $(_4fb).find(".calendar-menu").show(); if ($(_4fb).find(".calendar-menu-month-inner").is(":empty")) { $(_4fb).find(".calendar-menu-month-inner").empty(); var t = $("<table class=\"calendar-mtable\"></table>").appendTo($(_4fb).find(".calendar-menu-month-inner")); var idx = 0; for (var i = 0; i < 3; i++) { var tr = $("<tr></tr>").appendTo(t); for (var j = 0; j < 4; j++) { $("<td class=\"calendar-menu-month\"></td>").html(opts.months[idx++]).attr("abbr", idx).appendTo(tr); } } $(_4fb).find(".calendar-menu-prev,.calendar-menu-next").hover(function () { $(this).addClass("calendar-menu-hover"); }, function () { $(this).removeClass("calendar-menu-hover"); }); $(_4fb).find(".calendar-menu-next").click(function () { var y = $(_4fb).find(".calendar-menu-year"); if (!isNaN(y.val())) { y.val(parseInt(y.val()) + 1); _4fc(); } }); $(_4fb).find(".calendar-menu-prev").click(function () { var y = $(_4fb).find(".calendar-menu-year"); if (!isNaN(y.val())) { y.val(parseInt(y.val() - 1)); _4fc(); } }); $(_4fb).find(".calendar-menu-year").keypress(function (e) { if (e.keyCode == 13) { _4fc(true); } }); $(_4fb).find(".calendar-menu-month").hover(function () { $(this).addClass("calendar-menu-hover"); }, function () { $(this).removeClass("calendar-menu-hover"); }).click(function () { var menu = $(_4fb).find(".calendar-menu"); menu.find(".calendar-selected").removeClass("calendar-selected"); $(this).addClass("calendar-selected"); _4fc(true); }); } function _4fc(_4fd) { var menu = $(_4fb).find(".calendar-menu"); var year = menu.find(".calendar-menu-year").val(); var _4fe = menu.find(".calendar-selected").attr("abbr"); if (!isNaN(year)) { opts.year = parseInt(year); opts.month = parseInt(_4fe); show(_4fb); } if (_4fd) { menu.hide(); } }; var body = $(_4fb).find(".calendar-body"); var sele = $(_4fb).find(".calendar-menu"); var _4ff = sele.find(".calendar-menu-year-inner"); var _500 = sele.find(".calendar-menu-month-inner"); _4ff.find("input").val(opts.year).focus(); _500.find("td.calendar-selected").removeClass("calendar-selected"); _500.find("td:eq(" + (opts.month - 1) + ")").addClass("calendar-selected"); sele._outerWidth(body._outerWidth()); sele._outerHeight(body._outerHeight()); _500._outerHeight(sele.height() - _4ff._outerHeight()); }; function _501(_502, year, _503) { var opts = $.data(_502, "calendar").options; var _504 = []; var _505 = new Date(year, _503, 0).getDate(); for (var i = 1; i <= _505; i++) { _504.push([year, _503, i]); } var _506 = [], wee

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航