问题: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