( 6 ) 在“ <script runat="server"> ”中定义过程“ MyCalendar_SelectionChanged ”,以响应当前选择的日期所发生的事件,其代码如下所述。 Sub MyCalendar_SelectionChanged(ByVal sender As Object, ByVal e As System.EventArgs) Session("myblogtm")=MyCalendar.SelectedDate.ToShortDateString Response.Redirect(Request.ServerVariables("SCRIPT_NAME"))' 重新载入当前页面 End Sub 提示:由于 Dreamweaver 中的数据集只有在页面载入时才会重新定义、刷新,也就是说载入页面后,在页面中对数据集所做的有关修改,只有在下一次载入页面时才会生效,因此需要利用“ MyCalendar_SelectionChanged ”过程重新载入当前页面。 ( 7 )定义日历控件的日期。日历控件在页面载入时,默认显示日期为当前系统日期。但由于在上面的操作中变更当前选择的日期时,页面会重新载入,所以如果不作任何修改,则当变更当前选择的日期后,日历控件还是显示当前系统日期,而不会变更选择的日期。为了正确显示变更后的日期,应在“ Page_Load ”过程中定义日历控件的“ TodaysDate ”(日历控件的“今天”日期)属性为变更后的日期,“ Page_Load ”过程的源代码如下所述。 Sub page_load(Src As Object, E As EventArgs) If Session("myblogtm")<>nothing Then MyCalendar.TodaysDate=session("myblogtm") End If End Sub ( 8 )在日历控件源代码中添加代码 OnSelection Changed ="My Calenda r_Selection Changed" , 以绑定“ OnSelectionChanged ”事件的响应过程为“ MyCalendar_SelectionChanged ”,如图 91-14 中圆角方框所示。
( 9 )保存“ index.aspx ”并在 IE 中进行预览。至此,本实例操作完毕。 本实例运用日历控件“ Calendar ”的“ OnSelectionChanged ”事件实现了 BLOG 的日历事件,这是最为简单的方法之一。日历控件“ Calendar ”运用起来虽然简便,但通过它却很难在阳历下显示农历。网上较为盛行的另一种方法就是通过直接编辑 Javascript 日历程序,直接控制日历显示及日历事件。该方法较为灵活,但由于全是代码较为难学,这里就不作详细解说。至此,本实例介绍完毕。 |