注意:我知道所有內容都應該是UTF-8,但目前我所維護的網站需要提供ISO-8859-1。iframe中嵌入的textarea中未顯示重音字符
我有一個搜索框將結果加載到iframe中。其中一個搜索結果在textarea中包含以下字符串。
「#$%&「()* +, - 。/:; < =>
@ABCDEFGHIJKLMNO PQRSTUVWXYZ []^_
`ABCDEFGHIJKLMNO pqrstuvwxyz!{|}〜
¡¢? £¤¥|§¨©ª«¬®¯°±²³'μ¶·¸¹º»¼½¾¿
àÁÂÃÄÅÆÇÈÉÊËÌÍÎÏðÑÒÓÔÕÖ×ØÙÚÛÜÝÞß
àáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ
ASDF
如果我在自己的網頁打開搜索結果領域看起來是正確的,但是當結果被放入iframe中,他們看起來像
「#$%&「()* +,! - 。/:; < =>?
@ABCDEFGHIJKLMNO PQRSTUVWXYZ []^_
`ABCDEFGHIJKLMNO pqrstuvwxyz {|}〜
ASDF
請求報頭:
- 接受:*/*
- Accept-Encoding:gzip,deflate,sdch
- Accept-Language:en-US,en; q = 0.8
- Connection:keep-alive
- Content-Type:application/x-www-form-urlencoded; charset = iso-8859-1
- User-Agent:Mozilla/5.0(Windows NT 6.1; WOW64)AppleWebKit/537.36(KHTML,如Gecko)Chrome/46.0.2490.71 Safari/537。36
- X-請求-隨着:XMLHttpRequest的
響應頭:
- 緩存控制:無店,無緩存,必重新驗證,後檢查= 0, - 預-check = 0
- 連接:保持活動
- 內容編碼:gzip
- 的Content-Type:text/html的;字符集= ISO-8859-1
- 日期:星期五,二零一五年十月十六日16點25分13秒GMT
- 到期日:星期四,1981年11月19日八時52分00秒GMT
- 保持活動:超時= 15,最大= 73
- 雜注:無緩存
- 服務器:Apache
- 傳輸編碼:分塊
- 有所不同:接受編碼
- X供電-者:PHP/28年3月5日,pl1- gentoo
這是加載在iframe
$.ajax({
url: url,
contentType: 'application/x-www-form-urlencoded; charset=iso-8859-1',
success: function (data) {
var document = $('#searchResults')[0].contentDocument || $('#searchResults')[0].contentWindow.document;
document.write(data);
document.close();
}
});
任何想法我可以做的就是人物現身JS?
編輯 - 忘記要注意:在頁面加載後,開放的開發工具顯示了一些有趣的結果:
$( '#SearchResult所')的內容()找到( 'textarea的')。 val() - 顯示縮寫文本塊,字符只是丟失
$('#searchResults')。contents()。find('textarea')。text() - 顯示完整的文本塊,全部丟失字符出現在這裏
編輯2 - 另一個重點,在IE11,Firefox41和Chrome46中觀察到的Windows 7
什麼是iframe的標籤meta chartset中的編碼? –
父文檔和iframe都有相同的標籤, –