20150205
写了一个文件导入的FormPanel,提交的代码如下
selectExcelForm.getForm().submit({
url : '<%=path%>/budget/BudgetAction!importInoutInfo.action',
clientValidation : true,
method : 'POST',
waitMsg : '正在导入数据.....',
success : function(form,action){
console.info(action);
if(action.result.success)
{
alert(action.result.message);
gridStore.reload();
}else{
alert(action.result.message);
}
},
failure : function(form,action){
(1)
console.info(action);
switch (action.failureType) {
case Ext.form.Action.CLIENT_INVALID:
Ext.Msg.alert('失败', '所填的值的类型不正确');
break;
case Ext.form.Action.CONNECT_FAILURE:
Ext.Msg.alert('失败', 'Ajax连接失败');
break;
case Ext.form.Action.SERVER_INVALID:
Ext.Msg.alert('失败', 'SERVER_INVALID');
alert(action.result.success);
}
}
});
在火狐上进行测试,进行导入时发现后台返回的是{“message”:"导入成功","success":true},可是submit却一直走入failure的SERVER_INVALID分支,在代码中添加console.info(action)发现浏览器把返回的子窜认为是图片,之后在后台添加了语句response.setContentType("text/html"); 成功解决问题