快速业务通道

使用“日历”组件 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-21
并点击“应用”按钮。点击“关闭”按钮以关闭对话框。

运行这个应用程序。 选择的日期为今天的日期。 打开弹出的日历,您会注意到今天的日期被高亮显示。同时,您还会注意到现在日历的跨度从当前年份的一月份到下一年的十二月份。

在日历中选择任意日期并按 Validate 按钮。

如果所选择的日期在今天日期的一年之内,应用程序将显示一个有效的消息。如果您选择了一个在此范围之前或之后的日期,应用程序将显示一个错误消息。

验证日历范围

现在假设您正在开发一个旅行的程序。您要让您的用户为行程选择开始日期和结束日期,而且行程至少为一周时间。本节中,您将给应用程序添加一个 End 日期,您将添加代码以验证用户在 End 日期中设置的日期至少在 Start 日期之后一周。

在页面的 Start 日期下放置一个“日历”组件。根据需要调整其它组件。下图是您将在本节所设计的页面。

使用“日历”组件 - 编程入门网

图 4:包含一个结束日期的页面

在属性窗口中为新添加的“日历”设置以下值:

属性  
id endCalendar
dateFormatPatternHelp MM/dd/yyyy
label End Date:
required 使用“日历”组件 - 编程入门网 for True

使用“日历”组件(4)

时间:2011-01-16

在“日历”组件的右边放置一个“消息”组件。 按住 Ctrl-Shift 组合键并从“消息”组件拖放一根线到“日历”组件。

右键点击 End“日历”组件,并在弹出菜单中选择“属性绑定”。

将 End“日历”组件的 minDate 属性绑定到 Page 1 的 minCalDate。点击“应用”按钮。

将 End“日历”组件的 maxDate 属性绑定到 Page 1 的 maxCalDate。点击“应用”按钮,然后关闭属性绑定对话框。

在设计视图中,右键点击 End“日历”组件并选择“编辑事件处理程序”> validate 。

将以下代码添加到 endCalendar_validate() 方法中。这段代码确保结束日期至少在开始日期的一周之后。

代码示例 5:验证开始日期的代码

public void endCalendar_validate(FacesContext context,       UIComponent component, Object value) {     java.util.Calendar endDate = GregorianCalendar.getInstance();     endDate.setTime((Date)value);     java.util.Calendar startDate = GregorianCalendar.getInstance();     startDate.setTime(startCalendar.getSelectedDate());     if (startCalendar.getSelectedDate() != null) {       if (startDate.after(endDate)) {         throw new ValidatorException(new FacesMessage             ("End date must be after start date."));       } else {         startDate.add(java.util.Calendar.DATE, 7);         if (startDate.after(endDate)) {           throw new ValidatorException(new FacesMessage              ("End date must be at least one week after the start date."));         }       }     }   }

右键点击 Java 编辑器并选择“修复导入”以修复 FacesMessage 和 ValidatorExeception 错误。

修改 validateButton 的 action 方法以添加对 End“日历”组件的验证:

代码示例 6:验证结束日

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号