2014-10-02 45 views
0

我在頁面上有一個簡單的文本區域。當您單擊提交時,它會抓取文本區域的值並將其存儲到數據庫中。如何處理Microsoft Word字符編碼

<input type="text" class="form-control" id="theField" placeholder="Enter Data"> 

當用戶鍵入以下進入該領域它存儲罰款:"this is a test" item's

但是,如果鍵入到Microsoft Word,然後將其粘貼到現場,結果是:“This is a test†for item’s

我所做的只是獲得像這樣的值:var nominee = $('#theField').val()

處理這種情況的最佳方法是什麼?

回答

0

我不是100%肯定這會工作,但像它可能是你所能做的:

var ldquo = new RegExp(String.fromCharCode(226, 8364, 339), "g"), 
    rsquo = new RegExp(String.fromCharCode(226, 8364, 8482), "g"), 
    rdquo = new RegExp(String.fromCharCode(226, 8364), "g"); 

var clean = $("#theField").val() 
    .replace(ldquo, '"') 
    .replace(rsquo, "'") 
    .replace(rdquo, '"'); 

您還需要弄清楚左單「聰明」的報價是什麼樣子。當然上面的模式可能不正確;整個事情是兩個字符編碼之間碰撞的結果。

相關問題