`
262607zzg
  • 浏览: 5384 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

JQuery DatePicker之 工作日维护

阅读更多
   这两天研究JQuery DatePicker,弄的头很疼,不过学习成果也不错。
把自己认为重点的列出来以备以后学习,JQuery UI 版本jquery-ui-1.8.13.custom
现在想做一个工作日维护的功能,界面很简单。打开界面,显示一年的日期,默认六日为休息日显示为红色,其他日期黑色表示工作日,用户点击日期进行工作日和非工作日的转换。
    功能简单吧,选来选取插件用什么呢,最终选择可JQuery的DatePicker,优点不用说了。说说利用DatePicker解决这件事情的思路吧。
    首先布局问题,如何在一个页面中显示12个月呢?解决方法,这个很简单DatePicker有个numberOfMonths属性,填写了numberOfMonths:[3,4](三行四列),用DIV填装DatePicker,界面的布局问题解决了。
    第二个就是如何让DatePicker自动选择整个年而不是隔年的显示。例如,现在3月份,按照第一步写的结果会出现今年3月份至明年2月份12个月。这样不符合初衷,我的解决方案是利用minDate和maxDate进行约束,不知这样是不是走弯路了。
    第三个就是样式问题,这个问题折磨了我很久。开始想仅仅更改DatePicker的样式解决,可是本人不才CSS那套东西会用,改起来就费劲了,所以想换个方式。一直以来用DatePicker,只知其然不知其所以然,所以果断看源代码。最后终于找到如何更改来实现我的需求。在jquery-ui-1.8.13.custom
9613行
for (var row = 0; row < numMonths[0]; row++) {
     var group = '';
     ...............
9651行
for (var dRow = 0; dRow < numRows; dRow++) { // create date picker rows
    calender += '<tr>';
    ................
9655行
for (var dow = 0; dow < 7; dow++) { // create date picker days
用这3个循环来生成对应的日历,在最后一个for循环中有生成table中根节点 td a的方式,完全是字符串拼接啊,看到这里想必大家都知道,按照自己的需求改就行了。
这样就得到了一个干净的以年为单位的日历。
    最后一个问题,如何让页面在加载过程中将已经选中的工作日变成红色呢。看看beforeShowDay这个方法吧,DatePicker在每次点击和初始加载过程中都会把日历remove然后在重新显示,看看源代码这句话“ inst.dpDiv.empty().append(this._generateHTML(inst));”而且在每次重新绘制日历时都会执行beforeShowDay方法,所以解决方法就是在beforeShowDay写上给页面改变CSS的代码。
    一切搞定,如有不足之处请帮忙补充。
分享到:
评论
1 楼 caoxho 2012-07-10  
你好,最近项目有这样个需求,能参考下吗?
谢谢!
邮箱:caoxho@yeah.net

相关推荐

    jquery时间控件,年,年月日,年月的区间

    标题中的“jquery时间控件,年,年月日,年月的区间”指的是在前端开发中,使用jQuery库创建的时间选择器,它允许用户选择特定的年份、具体的年月日或者年月的区间。这样的控件在网页表单中非常常见,用于收集用户的...

    datepicker精简版

    标题中的"datepicker精简版"指的是一个特定的日期选择器组件,它被优化为只显示年、月、日的下拉菜单,以提供简洁且高效的日期输入方式。这个组件通常用于网页或者应用程序中,允许用户方便地选择日期,而不是手动...

    Test_Datepicker.zip

    在前端开发中,常见的日期选择器库有JavaScript的Bootstrap Datepicker、jQuery UI Datepicker、React的react-datepicker、Vue的v-calendar等。这些库提供了丰富的功能,如多语言支持、日期格式化、日期范围选择、...

    jquery 汉语 日期插件

    总的来说,这款“jQuery汉语日期插件”是网页开发中提升用户体验的一个利器,它为中文网页提供了简洁美观的日期输入解决方案,同时也考虑到了开发者的便利性和网页的可维护性。通过熟练掌握和运用这类插件,开发者...

    日期选择控件,依赖jquery,代码简单,小巧,只提供最基本的功能

    本资源提供的是一款基于jQuery的日期选择插件,名为"datepicker"。jQuery是JavaScript的一个库,它极大地简化了DOM操作、事件处理以及动画效果,使得开发者能够更高效地构建动态网页。这款日期选择插件以其简单的...

    Kendo UI for jQuery 2022.1.119

    总之,Kendo UI for jQuery 是一个功能强大且全面的前端开发框架,它通过提供一系列精心设计的UI组件,大大简化了复杂Web应用的开发工作,同时也提升了应用的性能和用户体验。无论是数据展示、用户输入还是页面布局...

    Jquery 1.3.2 日历时间控件 日期|时间|日期时间选择

    在IT领域,jQuery是一个广泛使用的JavaScript库,它简化了HTML文档遍历...随着技术的发展,虽然新版本的jQuery可能提供了更多功能和改进,但了解并掌握旧版本的使用仍有其价值,尤其是在维护旧项目或支持较旧浏览器时。

    RIA应用开发实验指导书:实验七 表单插件的应用.doc

    在本实验中,我们将专注于两个关键的JavaScript插件:jQuery UI的Datepicker和jQuery Validation,它们在RIA应用开发中用于表单处理和用户输入验证。** **1. jQuery UI Datepicker 插件** jQuery UI Datepicker 是...

    6个js日历控件.rar

    - **禁用特定日期**:某些情况下,可能需要禁用某些日期,如非工作日或已预订的日子。 - **多语言支持**:支持多种语言,适应全球化需求。 - **自定义格式化**:日期显示格式可根据需要进行调整,如“YYYY-MM-DD...

    js 日历控件 日历控件

    2. **jQuery插件**:如jQuery UI的Datepicker,它提供了丰富的配置选项和主题,简化了开发过程。通过引入jQuery库和Datepicker插件,可以快速实现日历功能。 3. **现代前端框架**:如React、Vue、Angular等,都有...

    日期插件-网页效果

    - 基础型:如jQuery UI的Datepicker,提供基本的日期选择功能。 - 智能型:如Bootstrap Datepicker,具有高级功能,如日期范围选择、时间选择等。 - 手势型:如Mobile Datepicker,针对触屏设备优化,支持滑动...

    js日历代码(兼容所有浏览器)

    JavaScript(简称JS)是一种轻量级的解释型编程...实践中,开发者可能会使用现成的开源库,如jQuery UI的DatePicker或Bootstrap的Datetimepicker,这些库已经解决了兼容性、用户体验和复杂功能等问题,简化了开发流程。

    javascript日历

    JavaScript日历可以是自定义的,也可以是使用第三方库如jQuery UI、FullCalendar或Bootstrap Datepicker等构建的。在网页开发中,JavaScript日历提供了便捷的方式来处理日期和时间,提升了用户体验。 创建一个...

    前端日期控件

    2. 使用库/框架:许多流行的前端库和框架提供了内置的日期控件,如jQuery UI的DatePicker、Bootstrap的Datepicker、AngularJS的ng-datepicker等,这些库通常已经处理了很多细节问题,使用起来更便捷。 3. 使用Web...

    JavaScript漂亮日历

    8. **插件和库**:有很多成熟的JavaScript日历插件和库,如FullCalendar、jQuery UI Datepicker等,它们提供了丰富的功能和自定义选项,可以帮助开发者快速实现日历功能,节省开发时间。 9. **国际化**:对于面向...

    javascript日期控件二

    在实际应用中,开发者可能会使用现有的开源日期控件库,如jQuery UI的Datepicker,Bootstrap的DateTimePicker,或者更现代的React和Vue等框架中的组件。这些库已经处理了很多细节问题,让开发者能够快速集成并自定义...

    javascript的网页日历控件

    5. **日历逻辑**:创建日历需要考虑如何正确显示每个月的天数,处理闰年(2月有29天)以及非工作日的高亮等。这涉及一些数学计算和条件判断。 6. **可访问性**:一个好的日历控件应考虑无障碍性(Accessibility)。...

    简单漂亮的日期控件

    2. JavaScript库:如jQuery UI的Datepicker、Bootstrap的DateTimePicker、Flatpickr、Pickadate.js等,它们提供了丰富的定制选项和良好的兼容性,适合更复杂的需求。 3. Vue、React、Angular等现代前端框架也有对应...

    date-picker,

    在JavaScript中,常见的库如jQuery UI、Bootstrap Datepicker或Angular Material都提供了日期选择器的实现。这些组件通常具有以下特性: 1. **交互性**:用户可以通过点击或输入日期来选择,提供日、月、年的选择...

Global site tag (gtag.js) - Google Analytics