解決 iframe 頁面亂碼_iframe

來源:互聯網
上載者:User

今天公司的做web同事遇見一個問題,大概描述如下:

本公司的web頁面為了支援國際化全部選擇使用utf-8編碼方式,由於客戶需求需要iframe客戶的一個頁面,

客戶頁面的編碼是gbk,但是沒有charset聲明。

這樣就造成了我們iframe客戶的頁面時,因為我們的charset聲明為utf-8且iframe裡的頁面沒有編碼聲明造成iframe的內容都成了亂碼。我們的編碼方式是不能變的,客戶也不會改變他們當前頁面的編碼方式同時也不能去添加一個charset聲明(很不正規,不過沒辦法,客戶是上帝)。

絞盡腦汁的想了半天終於想到了一個辦法:

添加一個中間頁面,這個頁面顯示的聲明為客戶頁面的編碼類別型。這樣客戶頁面的編碼類別型就從中間頁繼承下去了,不會出現亂碼了。

假設有 最終頁面為: ERR.htm

<html><head><meta http-equiv=Content-Type content=texthtml; charset=utf-8 ></head><body>首頁,編碼為utf-8,明確指定了編碼類別型。<iframe src="目標頁.htm" mce_src="目標頁.htm" width="100%" height="100%" /></body></html>

假設有 客戶頁面為 :目標頁.htm

<html><head></head><body>目標頁面,編碼為GBK,但是沒有指明編碼類別型。</body></html>

這樣肯定是會顯示亂碼的。如果修改成這樣:

OK.htm

<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /></head><body>首頁,編碼為utf-8,明確指定了編碼類別型。<iframe src="中間頁.htm" mce_src="中間頁.htm" width="100%" height="100%" /></body></html>

中間頁.htm

<html><head><meta http-equiv="Content-Type" content="text/html; charset=gbk" /></head><body>中間頁,編碼為gbk,明確指定了編碼類別型。協助目標頁確定編碼<iframe src="目標頁.htm" mce_src="目標頁.htm" width="100%" height="100%" /></body></html>

目標頁.htm

<html><head></head><body>目標頁面,編碼為GBK,但是沒有指明編碼類別型。</body></html>

 

就能解決這個問題了,當然你應該有更好。希望不吝賜教

------------------------------------------------------------------------------------------------------------------------------

6樓的兄弟 luxin88 發評論說可以在iframe裡加入charset,大家可以試試。


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.