首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

play framework 整合 EXT 使用 fileuploadfield 返回JSON有关问题

2012-11-23 
play framework 整合 EXT 使用 fileuploadfield 返回JSON问题爆出错误如下:SyntaxError: missing } in XML

play framework 整合 EXT 使用 fileuploadfield 返回JSON问题
爆出错误如下:

SyntaxError: missing } in XML expression[在此错误处中断] (<pre>{"msg":"ok","success":true}</pre>)


寻找了一下 发现 返回的 JSON中 被 <pre> </pre> 标签包裹着。
解决方法 两种
第一种: 后台添加一行代码:
 response.setContentTypeIfNotSet("text/html");

第二种:前台重写Ext.form.Action.Submit
    Ext.override(Ext.form.Action.Submit,{       // private       processResponse : function(response){           this.response = response;           //增加下面几句代码就OK啦           ////////////////////////           var data = response.responseText;           if(data.indexOf('<pre>') != -1) {             response.responseText = data.substring(5, data.length-6);             this.response = Ext.util.JSON.decode             (response.responseText);           }               ///////////////////////////                if(!response.responseText){               return true;           }           this.result = this.handleResponse(response);           return this.result;       }   });  


声明: 第一种本人使用 各个浏览器可以正常运行。  第二种时候发现只有FF浏览器可以。IE和谷歌依然不行。 所以最终使用了第一种。

热点排行
Bad Request.