ext 上传文件报错 版本 3.x fileUpload: true

问题:VM129:1 Uncaught SyntaxError: Unexpected token <

   at doDecode (ext-all.js:6451)
    at Object.decode (ext-all.js:6569)
    at Ext.form.Action.Submit.handleResponse (ext-all.js:32318)
    at Ext.form.Action.Submit.processResponse (ext-all.js:32217)
    at Ext.form.Action.Submit.success (ext-all.js:32288)
    at o (ext-all.js:5376)
    at Ext.data.Connection.s (ext-all.js:5379)
    at HTMLIFrameElement.C (ext-all.js:1763)

解决办法 : 修改 ext-all.js源码 改为

  doDecode = function(json) {

        //加入部分开始
        //孙元龙 加  2019/4/18 解决extbug fileupload
        if(json.indexOf('<pre>') != -1||json.indexOf('</pre>') != -1 || json.indexOf('<PRE>') != -1 ){
            json = json.replace(/<\/?.+?>/g,"");
            json = json.replace(/ /g,"");  //去掉html标签之后的内容
            
        }

    //加入部分结束

        return eval("(" + json + ")")
    },

分析:返回的json数据 ext封装成了"<pre class='' name=''>{code:200,msg:"成功",info:{userName:"张三"}}</pre>",

所以要解析成ext要解析的json,去掉所有html标签。你可以自己在源码ext-all.js中打断点看一看返回的数据(如上)。

ext-all.js 虽然是解压版本,直接在网上格式化js,就成了非解压版了,改就可以了。

参考 https://blog.csdn.net/yulong_1988/article/details/51889800

转发请注明:https://blog.csdn.net/somdip/article/details/89378438

猜你喜欢

转载自blog.csdn.net/somdip/article/details/89378438
今日推荐