J'ai un bouton gridview que j'ai créé par programmation et je veux charger un panneau de mise à jour du côté client avec les données envoyées. J'ai un champ de valeur cachée qui obtient ses données sur le clic du bouton gridview et la liste déroulante dans mon updatepanel dépend de cette valeur.Comment puis-je recharger un panneau de mise à jour du côté client en utilisant javascript?
Répondre
tout en appelant __doPostBack
directement fonctionnera, ce n'est pas une solution parfaite, car le nom de cette fonction est strictement un détail de mise en œuvre du cadre .Net.
Une meilleure solution consiste à utiliser ClientScriptManager.GetPostBackEventReference
, ce qui vous donne une interface plus résiliente pour la même fonctionnalité. Notez que GetPostBackEventReference
et GetCallBackEventReference
ne sont pas la même chose - le premier provoque un rechargement de page (partiel ou complet, selon la façon dont vos UpdatePanels sont configurés), tandis que ce dernier ne le fait pas.
nous utilisons la méthode __doPostBack() qui simule un postback et provoque l'UpdatePanel pour rafraîchir
__doPostBack('controlName','');
Ne pas oublier que le nom de contrôle est son ID HTML (qui pourrait bien contenir des dollars, etc.) et non juste c'est ASP.NET ID.
Pour autant que je sais que vous pouvez appeler cette méthode et de passer dans le champ de la valeur cachée, ou div qu'il est.
j'ai essayé de l'appeler comme ça __doPostBack ('<% = Upd atePanel1.ClientID%> ',' '); Est-ce ainsi que l'on appelle la méthode? – Eric
-1: l'appel direct de __doPostBack est une mauvaise pratique. –
Je sais pas tout le monde aime _doPostBack, mais s'il vous plaît expliquer pourquoi c'est une mauvaise pratique. C'est une pratique bien acceptée et largement utilisée, et tous les aspects négatifs de son utilisation, tels que la possibilité que _doPostBack soit déprécié, ne sont pas fondés. – tjmoore
La méthode la plus simple consiste à appeler __doPostBack du côté client.
Sur méthode Button1_onclick côté client, appelle:
__doPostBack('<%=UpdatePanel1.ClientID %>','Refresh:0,1,2'); //refresh update panel
À la page ajouter derrière le gestionnaire d'événement suivant pour capturer l'appel après retour:
protected void UpdatePanel1_Load(object sender, EventArgs e)
{
string arg = Request.Form["__EVENTARGUMENT"];
if (string.IsNullOrEmpty(arg)) return;
if (arg.StartWith("Refresh")
{
//parse data first then do your thing here...
}
}
Et bien sûr, ne pas oublier de fil événement à la méthode ci-dessus:
protected void Page_Init(object sender, EventArgs e)
{
UpdatePanel1.Load += new EventHandler(UpdatePanel1_Load);
}
- 1. Quelqu'un peut-il m'aider avec ceci? Actualiser le panneau de mise à jour partiellement du côté client
- 2. Problème du panneau de mise à jour, l'événement côté client ne se déclenche pas
- 3. panneau de mise à jour et javascript
- 4. Mise en œuvre du panneau de mise à jour?
- 5. Actualisation ASP.NET Panneau de mise à jour
- 6. Mettre à jour le panneau de mise à jour
- 7. Mise à jour du panneau asp.net
- 8. Event Bubbling à partir du panneau de mise à jour
- 9. Comment faire exécuter un rappel javascript après une publication dans le panneau de mise à jour?
- 10. Mise en cache de l'applet côté client?
- 11. Délai d'expiration du panneau de mise à jour ASP.Net
- 12. Fck Editor - Panneau de mise à jour
- 13. Actualiser le panneau de mise à jour
- 14. Mise à jour du client Oracle de 9 à 10
- 15. Problème avec jqmodal dans un panneau de mise à jour
- 16. Mise à jour des déclencheurs de panneau
- 17. Persistance des données côté client en utilisant JavaScript?
- 18. Remplir un formulaire côté client [Javascript]
- 19. Problème de panneau de mise à jour Ajax
- 20. Pourquoi les panneaux de mise à jour rechargent-ils les contrôles en dehors du panneau de mise à jour?
- 21. Comment appeler une fonction après la fin de la mise à jour dans un panneau de mise à jour?
- 22. Mise en cache côté client dans les applications Rich Internet
- 23. Mise à jour des données manquantes du panneau
- 24. Comment insérer une image du côté client dans un éditeur?
- 25. ciblant un panneau de mise à jour post retour
- 26. Connexion côté client Javascript, comment authentifier le côté serveur?
- 27. Boucle à travers un côté du client du répéteur
- 28. Boîte de dialogue modale côté client dans asp.net à partir du code côté serveur. (comment je fais ça)
- 29. où utiliser le panneau de mise à jour
- 30. Mise à jour du panneau sur la page maître actualise également les panneaux de mise à jour de page enfant
Je ne suis pas sûr de comprendre comment l'utiliser. c'était ma tentative: btnedit.OnClientClick = ClientScript.GetCallbackEventReference (UpdatePanel1, "", "", "") & String.Format ("openModal ('{0}', '" & GridView1.Rows (i) .Cellules (0) .Texte & "'); return false; ", hidden.ClientID) Je ne sais pas quoi mettre en paramètres – Eric
J'ai modifié ma réponse pour indiquer que vous voulez probablement un postback et non un rappel –
Je suis un peu confus à propos de ce que vous essayez de faire: l'utilisateur fait-il quelque chose avec le résultat de openModal(), et c'est après avoir fait cela que vous voulez que la listbox se reconnecte? –