Exécuter javascript après un postback partiel d'un updatepanel?

J'ai une page qui ajoute le script du fichier arborescent.

<script type="text/javascript" src="js/jquery.min.js"></script> <script type="text/javascript" src="js/init.js"></script> <script type="text/javascript" src="js/easing.js"></script> 

J'ai une table de mise à jour avec une liste déroulante. Lorsque vous exécutez l'événement SelectedIndexChanged (postback partiel d'une table de mise à jour), n'exécutez pas javascript.

Utilisation

 function pageLoad(sender, args) { InitialiseSettings(); } function InitialiseSettings(){ // replace your DOM Loaded settings here. // If you already have document.ready event, // just take the function part and replace here. // Not with document.ready $(element).slideUp(1000, method, callback}); $(element).slideUp({ duration: 1000, easing: method, complete: callback}); } 

Ou essayez avec le add_endRequest événement add_endRequest :

 Sys.WebForms.PageRequestManager.getInstance().add_endRequest(InitialiseSettings) 

Mettre à jour

pageLoaded mieux tout le code de document.ready à la fonction InitialiseSettings et passez-le à l'événement pageLoaded

 Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(InitialiseSettings) 

Exemple de code :

 Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(InitialiseSettings) 

Pour exécuter votre javascript dans les postbacks complets et partiels, mettez votre code javascript dans la fonction javascript pageLoad ().

 function pageLoad() { //your javascript code } 

Exemple:

 function pageLoad() { $(':submit').click(function () { CommodityArray(); }); $('#btn_image').click(function () { CommodityArray(); }); $(".repHeader").disableSelection(); CommodityArray(); } 

J'espère que cela aide! 🙂

Vous devez utiliser le code suivant après votre panneau de mise à jour.

 <script type="text/javascript" language="javascript"> var pageRequestManager = Sys.WebForms.PageRequestManager.getInstance(); pageRequestManager.add_endRequest(NewCharacterCount); </script> 

NewCharacterCount est votre nom de fonction javascript.

Lisez cet article Sys.WebForms.PageRequestManager EndRequest Event Espérons qu'il peut vous aider.

Si vous utilisez UpdatePanel et que vous souhaitez appeler une fonction javascript après la mise à jour du contenu dans le panneau de mise à jour, vous pouvez utiliser le mode ci-dessous pour le faire facilement. Dans l'étiquette du body page, appelez une fonction RefreshContent()

 <body onload="RefreshContent()"> <script type="text/javascript"> function RefreshContent() { Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler); } function EndRequestHandler() { alert("Add your logic here" ); } </script> 

Lien de référence http://www.infoa2z.com/asp.net/how-to-call-javascript-function-after-an-updatepanel-asychronous-request-to-asp.net-page

Vous pouvez utiliser les événements clients de PageRequestManager . Le paramètre émetteur contiendra les informations dont vous avez besoin. Par exemple, on pourrait le faire:

 // Register event handler Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(pageLoaded); /// Executed when all page content is refreshed, full page or async postback: https://msdn.microsoft.com/en-us/library/bb397523.aspx function pageLoaded(sender, args) { var isPostBack = sender.get_isInAsyncPostBack(); if(!isPostBack) return; // PostBack logic here. }