您的位置:首页 > Web前端 > JavaScript

EXT 3.x 使用详解之fileUpload处理返回值json问题 <pre></pre>

2016-07-12 15:56 621 查看
这里有个小bug,耗费了我一天的时间,就是fileUpload在处理json 返回值的时候不会去过滤掉

<pre></pre> <PRE></PRE>


这种字符的,然后就会报错

missing } in XML expression

所以我们在拿到的返回值是这样子的

<pre>{"fileName":"\/upfile\/images\/1468309140434.png","success":true}</pre>


这样

var res = Ext.util.JSON.decode(action.response.responseText);


就无法去正确解析返回的字符串了。

下面我们需要对ext-all.js源码做一个修改,如下:

doDecode = function(json){
//加入部分begin
if(json.indexOf('<pre>') != -1 || json.indexOf('<PRE>') != -1 ){
json=json.replace('<pre>','').replace('<PRE>','').replace('</pre>','').replace('</PRE>','');
}
//加入部分end
return eval("(" + json + ")");
},


如果是ext-all.js是压缩后的,自己去找没压缩的js修改即可
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: