Domanda

Sto usando .ashx per recuperare l'immagine e inserisco l'immagine all'interno del pannello di aggiornamento di Ajax, essa ritrae l'immagine quando una nuova immagine viene aggiunta al modulo ma quando cambiamo l'immagine non aggiorna l'immagine, nemmeno chiama il file .ashx ma quando aggiorno il browser funziona correttamente

È stato utile?

Soluzione

Sembra un problema di memorizzazione nella cache. Prova ad aggiungere alcune delle righe trovate qui nel tuo file ashx e dovrebbe speriamo di forzare il browser a richiedere nuovamente l'immagine. (So ??che il collegamento è per ASP anziché ASP.NET, ma cose come Response.Expires = -1 dovrebbero funzionare)

In alternativa, puoi cambiare il percorso all'immagine nel pannello di aggiornamento? Se aggiungi semplicemente un parametro casuale alla fine di esso, il browser lo tratterà come una nuova richiesta (usiamo la data / ora corrente come parametro quando lo stiamo facendo. Il parametro viene ignorato da ASP.NET a meno che tu fare esplicito riferimento)

Altri suggerimenti

Fai qualcosa del genere:

var sPath = " ../../ handlers / ProcessSignature.ashx? type = Visualizza & amp; UserID = " + userID + " & amp; d = " + (((1 + Math.random ()) * 0x10000) | 0) .toString (16) .substring (1);

Questo mette una stringa alfanumerica di 4 caratteri alla fine della stringa di query. Non è necessario, ma costringerà i browser a scegliere l'ultima versione di quell'immagine perché l'URL è diverso.

Ho provato quanto sopra e alcuni browser ignorano le intestazioni. Ho inserito tutti quelli e Chrome / FireFox 3 non ha provato ad aggiornare.

IE7 ha funzionato a volte

IE6 ha appena girato i pollici e ha chiesto perché fosse ancora esistente.

La modifica del percorso sopra lo risolverà in tutti i browser.

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