業務場景, 後端返回給前端的數據中,有html格式的字符串,如下
<font color='red'>我是提示信息</font>
後端使用fastjson. data.toJsonString()響應給前端, 但是格式不是標準的json格式.如
{"msg":"<font color="red">我是提示信息</font>"}
很明顯,這樣在前端無法轉換成json.後端的字符串在引號地方加上轉譯符還是有問題
解決方案:
在後端使用以下代碼轉
org.apache.commons.lang.StringEscapeUtils.escapeHtml(msg);
然後在前端把被轉譯的html字符再換回來
result = (result.replace(/<(.|\n)*?>/g, '') || ' ')
.replace(/</g, '<')
.replace(/>/g, '>');
result = JSON.parse(result)
這樣就完成了