3 votes

Désactiver une zone de texte ASP.net sans la désactiver réellement ?

Dans une application ASP.Net que j'ai, il y a une zone de texte qui reçoit une date à partir d'un fichier CalendarExtender . Lorsque la zone de texte est remplie, il vérifie cette date avec une autre date du formulaire et affiche un message d'avertissement. modalpopupextender popup si les dates sont erronées. Cependant, je ne veux PAS permettre à l'utilisateur d'entrer dans cette zone de texte. ReadOnly à false et essayé Enabled à false, il ne permet pas l'entrée manuelle, mais il désactive AUSSI le postback et n'appelle pas la fonction TextChanged pour déclencher l'événement modalpopupextender . Existe-t-il donc un moyen de désactiver la saisie manuelle et de ne pas la régler sur ReadOnly ?

14voto

mattgcon Points 1222

J'ai trouvé la solution, il suffit d'entrer onkeypress="return false ;" dans la balise HTML.

5voto

TRB Points 51

Essayez ceci

<asp:textbox id="txt1" onfocus="blur()" runat="server"/>

cela a fonctionné pour moi.

1voto

Mohamad Chami Points 1156

Ajouter les propriétés suivantes dans la balise de la zone de texte

onkeydown="return false" onpaste="return false"

ex :

<asp:TextBox ID="TillDate_TextBox" runat="server" onkeydown="return false" onpaste="return false"></asp:TextBox>

le premier bloc de propriété tape dans la zone de texte et le second bloc de propriété la colle.

0voto

Kibbee Points 36474

Je ne connais pas les composants exacts que vous utilisez, mais la façon habituelle d'accomplir ce genre de choses est la suivante. Faites en sorte que la sélection de la date sur le calendrier modifie la valeur d'un champ de formulaire caché. Cela empêchera l'utilisateur de modifier directement la valeur. Créez ensuite un autre élément, comme un div ou un span, et utilisez le javascript pour mettre à jour le span/div avec la valeur sélectionnée dans le calendrier.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X