fils_de_la_lumiere a écrit :
Bonjour, J'utilise dans un javascript l'objet XMLHttpRequest pour lancer des requêtes vers des documents xml et normalement je rencontre pas de problème. Sauf que là, avec Opera en lançant des requêtes sur des fichiers de plus de 98112 octets (oui c'est précis ) ça marche... mais qu'une seule fois! Dès qu'une nouvelle requête est lancée sur la même URL, le navigateur utilise le cache et foire l'opération (il ne se passe plus rien, il faut vider le cache pour pouvoir reloader le fichier).
La seule solution serait de générer une variable aléatoire dans l'url mais ça forcerait le reload du fichier à chaque fois...
Voici l'exemple simplifié au maximum, normalement sous Opera le lien affiche une boîte de dialogue qu'une seule fois :
98113octets.xml
Code :
- fichier contenant <xml>000000000000...</xml> de 98113 octets
|
test.htm
Code :
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/dtD/xhtml1-strict.dtd">
- <html xml:lang="fr" lang="fr" xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <title></title>
- <script type="text/javascript">
- function LoadXML(Url, CallBack) {
- var XMlDoc = new XMLHttpRequest();
- XMlDoc.overrideMimeType('text/xml');
- XMlDoc.open('GET', Url, false);
- XMlDoc.send(null);
- alert("ok" );
- }
- </script>
- </head>
- <body>
- <div>
- <a href="javascript:LoadXML('98113octets.xml')">Go!</a>
- </div>
- </body>
- </html>
|
Exemple
|