2010-07-19 92 views
1

我正在一個小網站,我想改變一點,所以它是更動態。 索引的.html是一樣的東西重音沒有顯示在jQuery加載

<html> 
<head> 
    <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"> 
... 
</head> 
<body> 
    <div id="page"> 
     <div id="header"></div> 
     <div id="main"> 
      <div id="menu"></div> 
      <div id="content"></div> 
     </div> 
     <div id="footer"></div> 
    </div> 
</body> 
<html> 

我使用jQuery和例如我在「菜單」分區加載「menu.html」文件。 Menu.html是一樣的東西:

<ul> 
    <li><a id="item1">item 1</a></li> 
    <li><a id="item2">item 2</a></li> 
</ul> 

與jQuery我添加了一些代碼,以便對「物品1」鏈接,然後一個item1.html文件在「內容」分區加載時,點擊。 這工作得很好,除了我沒有從menu1.html得到任何口音(我有一些'?'代替)。

的item1.html是一樣的東西:

Hello, this is my file 
c'est un <strong>fichier</strong> avec des accents à, é 

我沒有任何的html,body標籤在這些文件中(只有在存在中的index.html)。

你能幫忙嗎?

非常感謝,

呂克

回答

1

這看起來像編碼問題。

您的item1.html是由iso-8859-1編碼的嗎?您的網絡服務器是否配置爲在網頁的標題中包含iso-8859-1?如果放置在主文件中,口音是否可以工作?嘗試檢查每個文件中的編碼是否相同併發送正確。

如果這不起作用,您也可以嘗試將整個項目切換到utf-8。現在幾乎沒有理由使用iso,特別是在非英語項目中。

帕特的答案可能很快適用於您,但不會解決潛在的問題,並會使新頁面的創建變得複雜。

+0

你好,其實item1.html中沒有編碼。它只是上面描述的heml代碼,沒有任何,,標籤。好吧,我會嘗試使用utf-8(僅在index.html文件中設置此功能應該有訣竅?)。你是對的,我不希望頁面創建更復雜。 – Luc 2010-07-19 13:04:16

+0

每個文本文件都有一個編碼。通常文本編輯器可以檢測到這些文件並正確顯示文本文件(或htmls)。網絡瀏覽器並非如此。因此,'item1.html'也有編碼。如果您使用Windows附帶的notepad.exe,則可以在「另存爲...」對話框中看到編碼框。任何其他文本編輯器都支持以各種編碼保存。詳情請參閱他們的手冊。 – kojo 2010-07-19 13:13:42

+0

另外,你可以閱讀有關維基百科的字符編碼:http://en.wikipedia.org/wiki/Character_encoding – kojo 2010-07-19 13:15:52

3

你需要編碼重音字符。我會嘗試HTML entites第一:

é = &eacute; 
à = &agrave; 

如果不工作,你可以使用unicode encoding

é = \u00e9 
à = \u00e0 
+0

哦...所以我就不能在我item1.html文件作出貢獻,而無需編碼字符? :-(沒有其他的選擇嗎?我正在考慮添加一個html標籤來表示編碼,這是不能做到的? – Luc 2010-07-19 12:53:27

+0

不幸的是我不知道。一旦你加載item1.html,你可以使用jQuery來查找/替換重音字符與他們的實體。 – Pat 2010-07-19 13:39:30

0

如果使用Internet Explorer,你有沒有嘗試查看/編碼和檢查 '自動'。

你是否遇到與其他瀏覽器相同的問題?

+0

我有這個問題與Firefox。我還沒有嘗試過其他瀏覽器。 – Luc 2010-07-19 13:00:56

0

發生了類似的事情。我正在加載一個txt文件的內容到一個div和種?出現而不是西班牙字符á,é,í,ó和ú。

我解決它改變這個文本的encodig提交UTF-8