Async postback & UpdatePanel

trap13 Messages postés 2 Date d'inscription lundi 31 mars 2008 Statut Membre Dernière intervention 16 juin 2008 - 16 juin 2008 à 20:33
yassinebennani Messages postés 249 Date d'inscription samedi 13 octobre 2007 Statut Membre Dernière intervention 2 mai 2014 - 17 juin 2008 à 11:27
Je suis a la recherche d"une astuce pour synchroniser un morceau de code en javascript.








Pour résumer, j


'utilise un control customvalidator dans un updatepanel, je lui renseigne la propriete clientValidationFunction avec le nom de ma fonction javascript pour l'instant ça va :)





Ma fonction javascript doit controler la véracite d'une information saisie (exemple : la référence d'un produit chimique)

Pour cela je consomme un service web ...






 



C'est à partir de ce moment que mes petits soucis arrivent : comment faire pour que ma requete http (appel de mon service web) devienne "synchrone" ?





Car avant de sortie de ma fonction javascript, je dois renseigner la propriete IsValid de Args à vrai ou à faux.


(Args est un des deux parametres de la fonction javascript utilisé par le customvalidator)








Pour cela je dois attendre la réponse du service web.







 




J'ai essayé les boucles et fonction Sleep ... 

mais sans résultat interessant :(





J'ai bien peur que la seule solution est de mettre EnableClientScript à faux et faire le controle des infos saisies seulement coté serveur, c'est comme meme plus sympa d'avertir l'utilisateur d'eventuelles erreurs au moment de la saisie.








Si besoin, je peux fournir du code (javascript)

1 réponse

yassinebennani Messages postés 249 Date d'inscription samedi 13 octobre 2007 Statut Membre Dernière intervention 2 mai 2014
17 juin 2008 à 11:27
Bonjour

A mon avis tu peux tout simplement Passer par l'évenement différé TextChanged du TextBox en activant l'AutoPostBack de celui-ci pour que cet évenement devient immediat, car ce que tu veux faire en quelque sorte c'est exactement ça surtout tu utilise ajax, ton script ClientSide si tu le rend synchrone il aura exactement le comportement d'un script ServerSide car lui aussi il va obliger l'utilisateur à attendre avant de saisir un autre champ et si tu utilise ajax avec la solution que je t'ai proposé il y'aura pas une différence sauf que tu contrôle ça coté serveur.   

Les fins justifient les moyens_________________________________________________
Yassine BENNANI - Ingénieur en génie logiciel & multimédia (Consultant SI)
0
Rejoignez-nous