【发布时间】:2014-04-21 18:51:24
【问题描述】:
我的表单中有一个文件字段。 当我通过控制器提交表单时,IE 显示安全栏说我正在尝试将文件下载到计算机,这与我正在做的完全相反(我正在上传文件)。 当我使用 FF 将表单提交到服务器时,一切都很好。但是IE8和IE 9出现问题。
控制器动作:
var myForm = Ext.getCmp('uploaddraftpcpPanel').getForm(); // get the basic form
if (myForm.isValid()) { // make sure the form contains valid data before submitting
myForm.submit({
headers: {
enctype: 'multipart/form-data; charset=UTF-8'
},
url: 'upload/uploaddraftpcp.action',
success: function (myForm, action) {
Ext.Msg.alert('success', "success");
},
failure: function (myForm, action) {
Ext.Msg.alert('Failed', "failed");
}
});
} else { // display error alert if the data is invalid
Ext.Msg.alert('Invalid Data', 'Please correct form errors.');
}
服务器端代码如下所示:
@RequestMapping(value = "/upload/uploaddraftpcp.action", method = RequestMethod.POST)
public @ResponseBody
Map<String, ? extends Object> uploadDraftpcp(HttpServletRequest request){
Map<String, Object> modelMap = new HashMap<String, Object>(2);
try {
System.out.println("title pcp" + request.getParameter("title"));
System.out.println("description pcp"
+ request.getParameter("description"));
// response.setContentType("text/html");
modelMap.put("message", "Successfully submitted Form");
modelMap.put("success", true);
return modelMap;
} catch (Exception e) {
System.out.println(e.toString());
e.printStackTrace();
return ExtJSReturn
.mapError("Error retrieving data.");
}
}
【问题讨论】:
标签: spring-mvc extjs4.2