解决json包含html标签无法显示的问题

时间:2023-03-09 19:08:31
解决json包含html标签无法显示的问题

要是在json中包含html标签的话,在js接收数据的时候就会出现问题,导致接收失败。

所以在java端,对json包含有html标签的句子先进行转义。

package com.alibaba.intl.translationopensevice.translationopenseviceapp.module.screen.trans;

public class HtmlEncode {
public static String htmlEncode(String source) {
if (source == null) {
return "";
}
String html = "";
StringBuffer buffer = new StringBuffer();
for (int i = 0; i < source.length(); i++) {
char c = source.charAt(i);
switch (c) {
case '<':
buffer.append("&lt;");
break;
case '>':
buffer.append("&gt;");
break;
case '&':
buffer.append("&amp;");
break;
case '"':
buffer.append("&quot;");
break;
case 13:
break;
default:
buffer.append(c);
}
}
html = buffer.toString();
return html;
}
}

在前端,如果用innerText的方式显示json字段数据:

解决json包含html标签无法显示的问题 后端什么数据前端就是什么数据。

如果用innerHtml的方式显示json字段:

解决json包含html标签无法显示的问题会把相应的数据进行decode。

还有另外的方法

可以参考:http://my.oschina.net/parker/blog/49225