2011-03-22 70 views
2

我有一個西班牙驗證消息,我試圖用我的JavaScript顯示。 而上面的所有特殊字符變成&#243 ;. 只有當我使用JavaScript時,纔會發生這種情況,我通過服務器端顯示的西班牙語中有更多的驗證消息,它們都很好。西班牙特殊字符,如áó顯示時顯示混亂或垃圾值

errorString =「<%:Validation.xyz%>」;

我想從資源文件中獲取。

有人可以考慮快速解決問題嗎?

+0

你使用什麼框架使用'<% %>'符號? – Gabe 2011-03-22 22:50:30

+0

框架4並使用ASP.NET MVC 2 – alice7 2011-03-22 22:52:02

回答

4

你所說的垃圾實際上只是對應字符的HTML編碼值,並且在那裏阻止你從XSS。編碼的發生是因爲您使用的是<%:,它自動對HTML字符串進行編碼,但這不應該成爲您javascript的問題。例如:

var text = 'hello &#243'; 
document.getElementById('foo').innerHTML = text; 

工作得很好,並顯示hello ó在相應的DOM元素。

+0

如果文本當前顯示在屏幕上,那麼什麼是foo? – alice7 2011-03-23 05:00:23

+0

Thnx,我明白了,FOo只不過是我需要顯示短信的標籤。 – alice7 2011-03-23 17:16:16

2

檢查您是否使用UTF-8編碼保存了文件(以防萬一)。它發生在不使用UTF8 BOM的情況下進入TFS,然後在客戶端發生混亂。

+1

在Notepad ++中,我選擇了編碼菜單,當然,編碼設置爲ANSI而不是UTF-8。一旦設置爲UTF-8,我很樂意去!謝謝! – jmort253 2011-04-20 23:43:00

+0

太棒了!這對我來說真的很有用! – Macumbaomuerte 2012-06-12 17:21:41