我想强调打开ajax日历弹出窗口的具体日期

时间:2010-02-10 12:50:05

标签: asp.net-ajax

我正在使用AJAX日历扩展程序。

*日期

<asp:TextBox ID="txtCalControl" runat="server" Visible="True" Enabled="false"
CssClass="inputText" ErrorKey="IsValidDate" ></asp:TextBox>
 <span >
<asp:Image ID="imbCaledar" runat="server" ImageUrl="~/Images/calendar.GIF" />
</span>
</td>
<td >
<ajaxToolkit:CalendarExtender ID="calDisplaydate" runat="server" TargetControlID="txtCalControl" PopupButtonID="imbCaledar" PopupPosition="BottomRight" >
</ajaxToolkit:CalendarExtender>
</td>

当用户点击图片时,我想将日历设置为特定日期(例如,2007年2月14日)。

我在.cs中尝试了选定的日期属性,但它将值分配给文本框。

以下是我必须达到的要求

字段为空,并且不会将任何日期显示为默认设置。用户需要选择要在字段中填充的日期。因此,该字段为空白,直到用户从日历中选择日期。

默认情况下,打开时的日历控件设置为2年前的当前日期。

1 个答案:

答案 0 :(得分:1)

您可以使用OnClientDateSelectionChanged处理程序并设置BehaviorID,以便更轻松地找到扩展程序:

<ajaxToolkit:CalendarExtender ID="calDisplaydate" runat="server"
 TargetControlID="txtCalControl" PopupButtonID="imbCaledar" 
 PopupPosition="BottomRight" OnClientDateSelectionChanged="setDate" 
 BehaviorID="myDate">
</ajaxToolkit:CalendarExtender>

在javascript中:

    <script type="text/javascript" language="javascript">
      function setDate(sender,args){
        var d = new Date(); //Today
        d.setYear(d.getYear() - 2); //2 years ago
        $find("myDate").set_selectedDate(d);
      }
    </script>