J'ai un problème avec IE8 et l'ouverture d'une nouvelle fenêtre avec javascript et l'envoi de paramètres avec des caractères spéciaux.Problème dans IE8 avec GET Paramètres dans l'ouverture d'une nouvelle fenêtre avec javascript
<a href="javascript:oWin('/html/de/4664286/printregistrationcontent.html?12-security question=Wie heißt Ihr Lieblingsrestaurant','PRINT',800,600);" class="print">Seite drucken</a>
Le problème est la lettre «ß» (pointu S). Comme vous pouvez le voir, la chaîne ci-dessus est encodée en raison de l'anti XSS. Ce lien fonctionne dans FF et IE6 mais IE8 transmet le paramètre URL comme caractère avec le code 65 *** (ne connaît pas la valeur exaxt). Dans la fenêtre d'ouverture, vous ne verrez qu'un carré (car le caractère 65000+ n'est pas imprimable).
J'ai aussi essayé d'utiliser l'URL d'encodage au lieu de codage HTML
<a href="javascript:oWin('/html/de/4664286/printregistrationcontent.html?12-security question%3DWie hei%C3%9Ft Ihr Lieblingsrestaurant','PRINT',800,600);" class="print">Seite drucken</a>
Si je clique sur ce lien FF ou IE6 il fonctionne comme prévu, mais IE8 ne parviendra pas à transmettre le « ß » au serveur et par conséquent, il sera également récupérer dans le mauvais sens. Si je colle cette URL à IE8 cela fonctionnera aussi, mais pas si la fenêtre est ouverte par javascript.
La fonction Javascript Owin est défini comme suit
function oWin(url,title,sizeH,sizeV) {
winHandle = top.open(url,title,'toolbar=no,directories=no,status=yes,scrollbars=yes,menubar=no,resizable=no,width='+sizeH+',height='+sizeV);
if(navigator.appVersion.indexOf("MSIE 3",0)==-1) id = setTimeout('winHandle.focus()',1000);
}
Si quelqu'un a une idée où chercher la raison s'il vous plaît répondre à cette question.
Merci AMFA
Qu'est-ce que vous utilisez dans le back-end? Êtes-vous sûr que 'ß' n'est pas du tout transmis au serveur? A quoi ressemble la chaîne transmise lorsqu'elle est transmise dans IE8? –
J'ai compris que le lien fonctionne si je n'utilise pas javascript pour ouvrir une nouvelle fenêtre. Je ne sais pas pourquoi je n'ai pas essayé cela avant;) Mais je me demande toujours ce problème de javascript. – amfa
@ Pekka le backend se compose d'un Oracle IAS et nous utilisons un système CMS basé sur Java. Pendant que je débogue ceci je peux voir que la demande se compose d'un caractère avec le code élevé mentionné ci-dessus. – amfa