当需要从数据库中获取图片路径后,在JS端利用eval方法解析json对象后 w用img标签显示时 浏览器抛出Unexpected token ILLEGAL错误 ,网上有人说是 因为,json的数据中除了字符 "
,\
,/
和一些控制符(\b
,\f
,\n
,\r
,\t
)需要编码外,其他 Unicode 字符可以直接输出。 也就是说 "
,\
,/ 等等字符是不能直接传输的。需要进行如下处理再传输
result = URLEncoder.encode(result,"utf-8");
result = result.replace("\", "%20");
在js接收端要进行如下处理'
var tm = decodeURIComponent(tableHtml);
但我用了以上处理后还是抛出这个错误。。 查看了半天才发现 图片存在数据库中的路径是这样的:img\a.jpg,。。 而在img 标签的src属性中 显示图片应该是这样的:img/a.jpg 所以会报错 那么我们直接在servlet中 将\替换成/ 直接传送就好了