Bonjour,
Voici le problème:
Sur une page web j'ai un formulaire possédant un textarea. Lorsque cet élément perd le focus (onblur) je lance la fonction javascript MAJ qui effectue une mise à jour dans ma base de données MySql via Ajax.
Voici la fontion MAJ:
Cela fonctionne sauf si l'on modifie le textarea de manière à lui mettre une valeur qu'il a déjà eu...euh.. j'explique par un exemple:Code:
1
2
3
4
5
6
7
8
9
10 function MAJ(nomduchamp,valeur,cod_suj,page,order){ if(navigator.appName == "Microsoft Internet Explorer") { var requeteAJAX = new ActiveXObject('Msxml2.XMLHTTP'); }else{ var requeteAJAX = new XMLHttpRequest(); } requeteAJAX.open("GET","req.php?page="+page+"&order="+order+"&nomduchamp="+nomduchamp+"&valeur="+escape(valeur)+"&cod_suj="+cod_suj,false); requeteAJAX.send(null); location.reload(); }
1/On clique sur le textarea et on lui met la valeur 'toto'.Puis, on perd le focus et la page se recharge en indiquant 'toto' dans le textarea (et dans la base de données).
2/On clique sur le textarea et on lui met la valeur 'titi'.Puis, on perd le focus et la page se recharge en indiquant 'titi' dans le textarea (et dans la base de données).
3/C'est là que ça déconne...On clique sur le textarea et on lui met la valeur 'toto'.Puis, on perd le focus et la page se recharge en indiquant 'titi' dans le textarea (et dans la base de données). Impossible donc de remettre la valeur 'toto'.
Ceci se résout si je vide le cache d'IE.
Deux précisions:
1/Le problème ne se produit pas sous firefox.
2/Le problème existe sous IE6 et IE7
J'ai essayé de mettre les balises:
mais ça ne change strictement rien.Code:
1
2
3 <meta http-equiv="Pragma" content="no-cache" /> <meta http-equiv="Cache-Control" content="no-cache, must-revalidate" /> <meta http-equiv="Expires" content="0" />
Quelqu'un aurait-il une idée pour résoudre ce problème?
Merci.