赞
踩
将input type="file"上传的文件进行读取,读取文件的Base64码,然后上传到后台,在后台来处理这个Base64编码的文件。
准备一个上传文件input控件,给定文件的onchange事件。
<input type="file" class="upload-file" name="upload" id="personfacefile" onchange="personfaceFile()">
然后在script里定义一个接收Base64文件编码的变量以及onchange方法
var personfilefaceString = ""; /** * 获取文件的正面的base64 */ function personfaceFile(){ var files = $('#personfacefile').prop('files');//获取到文件列表 if (files.length == 0) { alert('请选择文件'); return; } else { var reader = new FileReader();//新建一个FileReader reader.onload = function (evt) { //读取完文件之后会回来这里 personfilefaceString = evt.target.result; //截取其中的Base64编码 personfilefaceString = personfilefaceString.substring(personfilefaceString.indexOf(",")+1); } reader.readAsDataURL(files[0]);//读取文件 } }
最后再操作你的personfilefaceString 变量提交,提交事件也可以放在读取完文件的回调方法里面进行,自己变通。这里值得注意的事,在上面代码里面的:
reader.onload = function (evt) { //读取完文件之后会回来这里
personfilefaceString = evt.target.result;
//截取其中的Base64编码
personfilefaceString = personfilefaceString.substring(personfilefaceString.indexOf(",")+1);
}
reader.onload方法一定要定义在读取文件操作reader.readAsDataURL(files[0])之前,切记!
input type="file"文件上传到后台读取
还有一个参考博客找不到了,感谢!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。