2009-12-23 7 views
2

C'est vraiment une question de débutant stupide, mais je suis encore à apprendre les ficelles du métier d'ASP.NET, et je ne pouvais pas travailler celui-ci par moi-même ... < blush>Comment faire pour attraper un événement LostFocus dans le code côté client?

Je travaille avec une 3ème partie témoin (Telerik RadTimePicker). Quelqu'un d'autre a conçu le formulaire, et je veux juste attraper un événement du côté client quand le contrôle perd le focus afin que je puisse définir la valeur d'un autre contrôle basé sur la valeur de celui-ci. Mais je ne trouve aucun événement que je puisse utiliser pour faire ça!

Voici le code existant:

<telerik:RadTimePicker ID="timeStart" runat="server"> 
    <TimeView runat="server" OnClientTimeSelected="OnClientTimeSelected"> 
    </TimeView> 
</telerik:RadTimePicker> 

Comme vous pouvez le voir, il y a déjà le code javascript en place si l'utilisateur tombe sur le sélecteur de temps et clique sur un temps pour le sélectionner - mais il n'y a rien à gérer la cas où l'utilisateur tape dans le temps, puis tabule le contrôle.

Comment faire?

Répondre

2

Parce que le RadTimePicker est effectivement composé de RadDateInput vous pouvez utiliser tous les les événements qui viennent avec qui:

http://www.telerik.com/help/aspnet-ajax/input_clientsideonblur.html

donc votre code ressemblera à ceci:

<telerik:RadTimePicker ID="timeStart" runat="server"> 
      <TimeView ID="TimeView1" runat="server" OnClientTimeSelected="OnClientTimeSelected"> 
      </TimeView> 
      <DateInput ClientEvents-OnBlur="timeStart_onBlur"> 
      </DateInput> 
</telerik:RadTimePicker> 
+0

Merci! En l'occurrence, nous avons utilisé ClientEvents-OnValueChanged au lieu de ClientEvents-OnBlur, mais vous obtenez un crédit de réponse. :) –

0

onBlur est l'événement pour perdu le focus - d » une référence here. Editer: Pour le RadTimePicker, vous devez connaître l'ID du contrôle HTML sous-jacent pour attacher un gestionnaire à, par exemple, la zone de saisie. Vous pouvez trouver ceci en regardant la source de la page rendue ou en utilisant quelque chose comme Firebug.

Une fois que vous avez l'ID, vous pouvez joindre un gestionnaire d'événements en utilisant javascript

par exemple dans JQuery

$("id_of_textbox").bind("blur", function(e){ 
     //Code in here 
    }); 
+0

Pourriez-vous préciser où cet attribut s'inscrit dans mon code ci-dessus? Ni le RadTimePicker ni le TimeView n'a un attribut onBlur disponible ...? –

Questions connexes