我有一個網頁,有一個像這樣就可以定義一個textarea:的JavaScript和JQuery - 編碼的HTML
<textarea id="myTextArea" rows="6" cols="75"></textarea>
有機會的話,用戶可以在此字段中輸入單引號和雙引號。舉例來說,我一直在測試與下面的字符串:
Just testin' using single and double "quotes". I'm hoping the end of this task is comin'.
此外,用戶可以輸入HTML代碼,我寧願避免。無論如何,我將這個textarea的內容傳遞給Web服務。在我發送它之前,我必須用JavaScript編碼textarea的內容。目前,我嘗試以下:
var contents $('<div/>').text($("#myTextArea").val()).html();
alert(contents);
我所期待的內容顯示
Just testin' using single and double "quotes". I'm hoping the end of this task is comin'.
取而代之的是,原始的字符串被打印出來。除了雙引號之外,還有很多實體需要考慮。因此,我假定在傳遞HTML之前會有一種編碼方式。有人可以告訴我如何做到這一點?
謝謝
忘掉JavaScript中的HTML編碼。做它服務器端。你不能相信客戶,所以根據客戶的要求,這是一個巨大的XSS漏洞。 – Quentin 2010-03-30 13:15:19
使用_.escape來自http://underscorejs.org/#escape – rjdmello 2014-06-19 07:37:31