问题描述
- jQuery ajax form提交在IE8下不执行回调函数
-
// 上传文件function myUploadExcel(obj) {var options = { url : ""${ctx}/ins/pro/upLoadTempFile.do?filename=""+obj.value dataType : ""text"" beforeSubmit : function(formDatajqFormoptions){ var filename = obj.value; if(filename == null || filename == '') { $.messager.alert('提示信息''请选择要上传的文件''warning'); MaskUtil.unmask(); return false; } var ext = filename.substr(filename.lastIndexOf(""."")).toLowerCase(); if (obj.id=='excelFile') { if(ext != '.xls' && ext != '.xlsx') { $.messager.alert('提示信息''文件类型必须是excel''warning'); obj.outerHTML=obj.outerHTML; MaskUtil.unmask(); return false; } }else if (obj.id=='cadFile') { }else if (obj.id=='pdfFile') { if(ext != '.pdf') { $.messager.alert('提示信息''文件类型必须是pdf''warning'); obj.outerHTML=obj.outerHTML; MaskUtil.unmask(); return false; } }else if (obj.id=='textFile') { } return true; } success : function(tempPath) { var realName=tempPath.substring(tempPath.indexOf(""_"")+1tempPath.length); if (obj.id=='excelFile'){ //返回了excel地址发一次请求获得方案信息刷新可刷新数据 handleSchemeExcel(tempPath); $('#excelsrc').val(tempPath); $('#excelFile').hide(); $('#excelFileSrc').html(realName).show(); } } }; if (obj.id=='excelFile'){ $(""#excelForm"").ajaxSubmit(options); }else if(obj.id=='cadFile'){ //CAD文件地址放到上面form里面 $(""#cadForm"").ajaxSubmit(options); }else if(obj.id=='pdfFile'){ //PDF文件地址放到上面form里面 $(""#pdfForm"").ajaxSubmit(options); }else if(obj.id=='textFile'){ //text文件地址放到上面form里面 $(""#textForm"").ajaxSubmit(options); }}文件能上传到指定的路径下,浏览器下方也提示成功,但是不执行回调函数,SUCCESS和error都不执行。但是在IE9,FFChorme都没有问题,求指导!
解决方案
用fiddler看下,post请求发出了没有?
解决方案二:
IE8浏览器如果在控制器中不标识返回值的类型,会无法呈现数据,在spring的注解上进行标识后前台页面的ajax才能获取返回值
解决方案三:
你没配置error回调吧。。。ie安装个httpwatch插件看看请求最后返回了什么内容。
时间: 2025-01-30 18:28:32