Générer un événement sur le serveur ASP.NET

[Résolu]
Signaler
Messages postés
15
Date d'inscription
vendredi 11 janvier 2002
Statut
Membre
Dernière intervention
29 mai 2008
-
Messages postés
15
Date d'inscription
vendredi 11 janvier 2002
Statut
Membre
Dernière intervention
29 mai 2008
-
Bonjour,
Est il possible dans une appli ASP.NET programmée en VB.NET de générer un événement sur le serveur depuis du code Javascript ?

Détails :
J'ai un treeview et je le gère coté client pour limiter les échange avec le serveur et donc accroitre la rapidité. Mais je souhaiterais qu'un événement se produise sur le serveur lorsque je clic sur un noeud.... Cet evenement est déjà géré de base je sais mais comme j'"inibe" les evenement expand et collapse, ca me met une erreur....

Merci d'avance ;)

6 réponses

Messages postés
15
Date d'inscription
vendredi 11 janvier 2002
Statut
Membre
Dernière intervention
29 mai 2008

Je te trouve bien catégorique... pourquoi ecartes tu de suite cette solution ???
Jette un coup d'oeil a la source suivante : elle m'a bien plus :
http://www.codeproject.com/useritems/ClientSideTreeView.asp
...
Messages postés
15
Date d'inscription
vendredi 11 janvier 2002
Statut
Membre
Dernière intervention
29 mai 2008

La solution que je préconise est toute simple :
--> Ne déclencher un événement serveur que sur clic sur un noeud du treeview,
--> Gérer les events expand et collapse coté client pour plus de rapidité... (comme ds l'article)
Je ne pense pas que ce soit si stupide que cela...
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
29
j'ai pas trés bien compris pourquoi ca te met une erreur à mon avis tu devrais plutot essayer de corriger l'erreur plutot que de faire un event coté serveur via javascript

mais bon, je viens justement de faire un article la dessus : http://www.c2i.fr/code.aspx?IDCode=610 mais c'est loin d'etre evident, et la j'ai utilisé .net 2 ... en .net 1 c'est aussi possible mais faut tout coder, on a pas d'interface ni rien et on doit connaitre relativement bien le fonctionnement d'asp.net pour obtenir le meme resultat :p


<HR>
Cyril - MCP ASP.net
Webmaster de : Hoshimi.CodeS-SourceS.fr
Messages postés
15
Date d'inscription
vendredi 11 janvier 2002
Statut
Membre
Dernière intervention
29 mai 2008

Ca me met une erreur car je navigue dans mon treeview coté client( en cliquant sur les +) (inhibition des evenements expand et collapse sur le serveur) et quand je clique sur un noeud, j'ai un message comme quoi il ne peut récupérer ce noeud puisqu'il n'est pas sensé être affcihé...

recap :
je mets dans le form load :


Me.tvLieu.Attributes.Add("onexpand", "TVNodeExpand();")

--> ca inhibe l'event onexpand

Mais du coup mon event server SelectedIndexChange ne fonctionne plus...



message : The node at index 0.0.1 is not currently displayed in the tree. SelectedNodeIndex cannot be set to an undisplayed node (all parents of a selected node must be expanded).

T'as une idée en ASP.NET 1 ?
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
29
pourquoi as tu cliqué sur réponse accepté alors que le problème n'est pas résolu ? :-/



sinon pour ton problème, non je n'est pas de solution, mais celle que
tu essaye de faire n'est pas du tout la solution, au contraire c'est
une source de problème futur ...



Le mieux est de changer de treeview ou peut etre que le treeview
possede une propriété genre autoPostBackOnNodeExpand ou un truc du
genre qui te permettrait de pas faire un postback, mais ce que tu veux
faire n'est absolument pas une solution.


<hr>Cyril - MCP ASP.net
Webmaster de : Hoshimi.CodeS-SourceS.fr
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
29
la solution que tu me dis c'est de faire un evenement coté serveur pour ne pas etre emmerdé ensuite, c'est bien ca ?



les raisons pour lesquels je trouve ca stupide, c'est que pour faire ca
sans postback, tu es obligé d'utiliser ajax, donc malgré tout il va
falloir que tu fasses une requete ! requete qui va etre traité par
asp.net (meme si celle ci ne retournera rien) ce qui prendra donc du
processeur ... et puis cette solution c'est plus bidouille qu'autre
chose.



l'article que tu me montre n'a rien à voir avec la solution que tu me
propose, d'aprés ce que j'ai trés rapidement lu, la personne dérive du
treeview de microsoft, mais ne declenche pas d'evenement coté serveur
via javascript ...

<hr>Cyril - MCP ASP.net
Webmaster de : Hoshimi.CodeS-SourceS.fr