IE8 に問題があり、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>
問題は文字 'ß' (シャープ S) です。ご覧のとおり、上記の文字列はアンチ XSS によるエンコードです。このリンクは FF と IE6 で機能しますが、IE8 は URL パラメーターをコード 65*** の文字として送信しています (正確な値はわかりません)。開始ウィンドウでは、四角形のみが表示されます (65000+ の文字は印刷できないため)。
また、HTML エンコーディングの代わりに URL エンコーディングを使用しようとしました
<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>
FF または IE6 でこのリンクをクリックすると、期待どおりに動作しますが、IE8 はサーバーへの「ß」の送信に失敗するため、間違った方法で返されます。この URL を IE8 に貼り付けても機能しますが、javascript でウィンドウを開いた場合は機能しません。
Javascript 関数 oWin は次のように定義されます。
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);
}
誰かが理由を探す場所を知っている場合は、これに答えてください.
amfaさんありがとうございます