2010-02-10 6 views
2

J'utilise un extendeur de calendrier AJAX comme suit.Je souhaite mettre en surbrillance une date spécifique lorsque le menu contextuel ajax calendar est ouvert

* Date

<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> 

Je veux mettre le calendrier à une date précise (par exemple 14 février 2007) lorsqu'un utilisateur clique sur l'image.

J'ai essayé la propriété de date sélectionnée dans .cs mais elle affecte la valeur à la zone de texte.

suivant est l'exigence que je dois obtenir

champ est vide, et ne présentant pas de date paramètre par défaut. L'utilisateur doit sélectionner une date à renseigner dans le champ. Par conséquent, le champ est vide jusqu'à ce que l'utilisateur sélectionne une date dans le calendrier.

Par défaut, le contrôle du calendrier lorsqu'il est ouvert est défini sur la date du jour 2 ans en arrière.

Répondre

1

Vous pouvez utiliser le gestionnaire OnClientDateSelectionChanged combiné avec la fixation d'un BehaviorID afin que vous puissiez trouver l'extension plus facile:

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

En 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> 
+0

Merci beaucoup nick .. qui fonctionne – SaveMe

Questions connexes