前端表单提交,提交有图片出现的问题,及解决方案 兼容ie9

更新一下我的小园子,主要说的是jq文件上传的过程中,如果出现上传的文件里有图片问题

其实文件上传有图片的情况下,不是什么大问题,对于前端来说,但是,如果需要兼容ie9的时候,就需要处理一下

文件上传如果有图片的时候,表单用FormData就可以,需要兼容ie9的时候,我的处理方式如下

首先,第一部分就是图片上传,需要处理ie9,其他标准浏览器的图片上传就不贴代码了,有点多,以下是ie9的图片上传,判断是ie低版本的情况下加入这部分代码即可 

if(emptyImages.length<=1 && !fileObj.files){  // 浏览器不认识fileObj.files的时候执行 如ie 9下执行此处代码
fileObj.select(); //必须
var path = document.selection.createRange().text;
var fso = new ActiveXObject("Scripting.FileSystemObject");
var testFile = fso.GetFile(path);
prevFileArray[0] = testFile;
document.selection.empty();
emptyImages[0].style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod='scale',src=\"" + path + "\")";
emptyImages[0].src = 'data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==';
emptyImages[0].src = path;
fileObj.blur(); //必须
}

第二部分就是表单上传的时候,用普通的form表单提交

html里form 中需要注意的地方  需要加这个属性enctype="multipart/form-data"  

<form action="customer/update" method="post" id="customerForm" enctype="multipart/form-data" target="targetFrame">

    接下来就正常提交就ok了

 亲测,ie9 兼容,自己用过的代码才来分享,给自己一个记录,希望可以帮助到和我遇到一样问题的战友们,有问题,可以留言互相学习

猜你喜欢

转载自www.cnblogs.com/PotatosMe/p/11159317.html