2013-07-31 61 views
0

如何使用jquery或javascript將像捲曲引號之類的多字節字符轉換爲像“等效實體?如何將捲曲報價轉換爲“

var userTxt = '「testing」'; 

轉換userTxt應該看起來像後=>“testing”

+1

不應該使用'var userTxt ='「testing」'; –

+0

出於興趣,您爲什麼要這麼做?如果你遇到像這樣的字符顯示問題,將你的'Content-Type' HTTP標頭設置爲'text/html; charset = utf-8'(或者如果你使用的編碼不是utf-8,則爲一個合適的值)應該將它們整理出來。 –

+1

http://stackoverflow.com/a/784765/2220391作品http://jsfiddle.net/Spokey/8ftfS/ – Spokey

回答

0

這裏是如何做到這一點:

$('<div/>').text('This is fun & stuff').html(); // evaluates to "This is fun &amp; stuff" 

Source

或者你也可以做到這一點this way

0

嘗試,而不是如果你可以使用$quot代替&#8220

var e_encoded = e.html().replace(/"/g, "&quot;"); 
console.log(e_encoded); // outputs &quot;&amp; 

,或者您可以使用此功能

function htmlEscape(str) { 
    return String(str) 
      .replace(/&/g, '&amp;') 
      .replace(/"/g, '&quot;') 
      .replace(/'/g, '&#39;') 
      .replace(/</g, '&lt;') 
      .replace(/>/g, '&gt;'); 
} 
0

爲此,您可以使用正則表達式。

function replace_quotes(text){ 
    return text.replace(/\u201C/g, "&#8220;").replace(/\u201D/g, "&#8221;"); 
} 

該函數通過匹配它們的unicode十六進制代碼來替換引號字符。
請參閱:Regex Tutorial - Unicode Characters