Modo più semplice per aggiornare un client-side javascript variabile array durante un ASP.NET AJAX postback in un UpdatePanel?

StackOverflow https://stackoverflow.com/questions/95005

  •  01-07-2019
  •  | 
  •  

Domanda

Se voglio iniettare a livello globale, a livello di ambito di matrice variabile in una pagina javascript lato client durante una piena pagina postback, posso usare:

this.Page.ClientScript.RegisterArrayDeclaration("WorkCalendar", "\"" + date.ToShortDateString() + "\"");

di dichiarare e di compilare un lato client array javascript nella pagina.Bello e semplice.

Ma io voglio fare lo stesso da un postback asincrono da un UpdatePanel.

Il più vicino che posso figura finora è quello di creare una .js file che contiene solo la var dichiarazione, aggiornare il file durante il postback asincrono, e quindi utilizzare un ScriptManagerProxy.Scripts.Add per aggiungere la .file js per la pagina di portata globale.

C'è qualcosa di più semplice?r iz facendo di sbagliato?

È stato utile?

Soluzione

Si potrebbe anche aggiornare un nascosto etichetta all'interno del pannello di aggiornamento che permette di scrivere qualsiasi codice javascript che ti piace.Vorrei suggerire anche se l'utilizzo di web services o anche la pagina metodi per recuperare i dati di cui avete bisogno invece di utilizzare pannelli di aggiornamento.

Esempio:myLabel.Text = "....";...inserire la logica in questo, o è possibile aggiungere [WebMethod] pubblica pagina statica metodo e restituire i dati direttamente.

Altri suggerimenti

Utilizzare il metodo statico del Sistema.Web.Interfaccia utente.ScriptManager.AddStartupScript()

Lo script verrà eseguito nel pieno e parziale postback.

Sam è corretto.ScriptManager.RegisterStartupScript è il nome corretto della funzione .Esso verrà eseguito su tutto pieno e parziale per gli aggiornamenti della pagina.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top