【web】文件上传

接近年尾了,手头上的工作已经基本完成,终于有空可以写写教程了。


不管是在网页开发,还是在移动端开发上,有时业务需求会要求上传一些文件。

这里我使用的方法十分简单,使用<input type=”file”>就可以

备注:本教程不作表单美化的过多讲解,说太多只让各位同学头晕,大神飘过,可以拍砖大笑


示例:

html:

其中第一个input是选择文件的,其他的input是用于存储获取的信息使用

<input type="file" name="uploadfile" id="chooserFile" value=""></input>
<input type="hidden" name="file_base64" id="file_base64" value=""></input>
<input type="hidden" name="file_name" id="file_name" value=""></input>

js:

这里演示使用了Jquery库来获取选择的文件,$('#chooserFile').get(0).files[0]; 获取到的文件对象 。

初始化FileReader对象,并把获取到的文件对象放入FileReader对象内,通过FileReader对象的onload函数的事件对象event,可以获取其文件的base64。

获取到base64以后,放在页面内隐藏的input输入框,待用

	$('#chooserFile').die().live('change',function(e){
		var fileObj = this.files[0];
	        var reader = new FileReader();  
	        reader.readAsDataURL(fileObj);  
	        reader.onload = function(e){  
	            console.log(e.target.result); 
	            var fileName = fileObj.name;
	            //获取到base64后,放在一个hidden的input里面
	            $('#file_base64').val(e.target.result);
	            $('#file_name').val(fileName);
	        };  
        });

获取到文件的base64以后,余下的就是上传了,使用ajax进行上传即可!上传的时候获取文件的base64就直接从隐藏的input里面取就可以了。

至于怎么使用ajax这个问题,这里就不细说了。不明白的可以留言,谢谢。






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值