J'ai une zone de texte qui modifie le contenu d'une liste déroulante dans l'événement OnTextChanged. Cet événement semble se déclencher lorsque la zone de texte perd son focus. Comment faire pour que cela se produise sur l'événement keypress ou keyup?Comment faire une publication de boîte de texte sur KeyUp?
Voici un exemple de mon code
<asp:TextBox ID="Code" runat="server" AutoPostBack="true" OnTextChanged="Code_TextChanged">
<asp:UpdatePanel ID="Update" runat="server">
<ContentTemplate>
<asp:DropDownList runat="server" ID="DateList" />
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Code" />
</Triggers>
</asp:UpdatePanel>
Ainsi, dans le codebehind, je lie le menu déroulant de la charge de page. L'événement Code_TextChanged redéfinit simplement la liste déroulante. Je voudrais que cela se produise à chaque pression de touche plutôt que lorsque la zone de texte perd son focus.
J'ai hérité ce code récemment et ce n'est pas la méthode idéale de faire cela pour moi, mais les limites de temps me empêcher de réécrire cela dans une méthode de servicy Web.
J'ai essayé d'utiliser jQuery pour lier l'événement « keyup » événement correspondant au « changement » pour la zone de texte, mais cela ne fonctionne que sur la première touche enfoncée.
la même chose arrive avec cela.Lorsque le panneau de mise à jour actualise la zone de texte perd le focus –
Supprimez simplement AutoPostBack = "true" avec cette solution et cela devrait fonctionner. –
Le commentaire de Rick est correct, supprimez l'AutoPostBack et cela fonctionnera sans problème –