2012-01-06 1 views
0

J'ai 3 panneaux de mise à jour sur une page. Chacun d'eux est mis à jour conditionnellement. Dans chaque panneau de mise à jour, j'ai un seul bouton qui, lorsqu'il est cliqué, va peupler le panneau avec des données. Chaque panneau est indépendant l'un de l'autre.Charger plusieurs contrôles UpdatePanel avec des clics de bouton JavaScript

Tout fonctionne correctement lorsque vous cliquez manuellement sur chacun des 3 boutons de leur panneau respectif. Le problème que je rencontre est lorsque j'utilise JavaScript pour cliquer sur les boutons. J'ai du succès lors de l'exécution d'un seul appel JavaScript, mais lorsque j'essaie de cliquer sur les trois boutons avec JavaScript, les choses se comportent de façon sporadique. Selon l'endroit où je place les appels JavaScript dans mon code, différents panneaux fonctionnent et les autres ne le font pas.

Par exemple:

__doPostBack('btnBindTeamTicketList', ''); 
__doPostBack('btnBindPriorityList', ''); 
__doPostBack('btnSearchTemplate', ''); 

affiche le panneau qui détient le bouton 'btnSearchTemplate', mais pas les autres. Des résultats différents se produisent lorsque je change la séquence.

Y at-il un moyen de cliquer sur mes 3 boutons indépendants (chacun dans leur panneau respectif) en utilisant JavaScript afin que chaque panneau se charge comme si je cliquais sur eux individuellement? Je suppose que cela a à voir avec l'AJAX en quelque sorte en conflit les uns avec les autres ou un problème de synchronisation. Quelqu'un me pointe dans la bonne direction?

J'utilise ASP.NET 3.5/C#

Répondre

1

Je pense que vous devriez faire un postback. Mettez un panneau de mise à jour caché dans votre page et placez un bouton dans ce nouveau panneau de mise à jour. Ce bouton devrait appeler les événements

  • btnBindTeamTicketList_Click (null, null)
  • btnBindPriorityList_Click (null, null)
  • btnSearchTemplate_Click (null, null)

et devrait mettre à jour les autres panneaux de mise à jour comme upTeamTicketList .Mettre à jour(). Maintenant, essayez de cliquer sur ce nouveau bouton.

+1

Vous pouvez également quitter les panneaux de mise à jour et commencer à utiliser jQuery AJAX avec [cet article] (http://www.mikesdotnetting.com/Article/104/Many-ways-to-communicate-with-your-database-using- jQuery-AJAX-and-ASP.NET). Vous pouvez charger du contenu sans les publications volumineuses d'ASP.NET. – sevenkul

Questions connexes