HTML5 读取上传文件(转载)
另参考 http://www.jianshu.com/p/46e6e03a0d53
1 filelist对象与file对象:
<input type="file" id="file" multiple> //multiple可上传多个文件
<input type="button" onclick="showFileName()" value="文件上传">
<script>
function showFileName(){
var file; //创建file对象
for(var i;i<document.getElementById("file").files.length;i++){
file = document.getElementById('file').files[i]; //.files
console.log(file.name);
}
}
</script>
2 Blob对象:表示原始的二进制数据,file继承自blob。
- 其属性1:size 表示文件大小
- 属性2:type 表示文件类型 如image/png
var file;
file = document.getElementById("file").files[0];
file.size; //当前上传文件的大小
file.type;
3 Filereader对象
包含5个对象:
- readAsBinaryString 将文件数据读取为二进制数据字符串
- readAsText 将文件数据读取为文本数据
- readAsDataURL 图像路径
- readArrayBuffer
- abort 中断
6个事件:
- onabord
- onerror
- onloadstart
- onload
- onloadend
- onprogress 监听进度
<input type="file" id="file">
<input type='button' value='读取图像‘ onclick='readAsDataURL()'>
<input type='button' value=读取二进制’ onclick=''>
<input type='button value='读取文本文件‘ onclick=''>
<div id='result' name='result>
<script>
var result = document.getElementById('result');
var file = document.getElementById('file'); function readAsDataURL(){
var file = document.getElementById('file').files[0];
var reader = new FileReader(); //创建filereader对象
reader.readAsDataURL(file); //读取图片文件
reader.onload = function(ofile){
var resultimg = document.getElementById('result');
resultimg.innerHTML = '<img src="'+ofile.target.result+'"+alt="">';
}
} function readAsText(){
var file = document.getElementById('file').files[0];
var reader = new FileReader();
reader.readAsText(file); //读取文本内容
reader.onload = function(e){
var resulttxt = document.getElementById('result');
resulttxt.innerHTML = e.target.result;
}
}
</script>
HTML5 读取上传文件(转载)的更多相关文章
- 实践Html5的上传文件
技术点: 1.通过input的change事件获取文件信息: onchange = function() { this.files } 这个files属性是htmlInputElement接口的属性, ...
- C# 结合html5 批量上传文件和图片预览
html5 新特性 <input id="imgsf" type="file" name="imgsf" multiple /> ...
- php 使用html5 XHR2 上传文件 进度显示
思路:只要我们知道上传文件的总大小,还有上传过程中上传文件的大小,那么就可以实现进度显示了. 在html5中,XMLHttpRequest对象,传送数据的时候,progress事件用来返回进度信息. ...
- jQuery+HTML5实现上传文件预览
<!DOCTYPE html> <html> <head> <title>HTML5上传图片预览</title> <meta http ...
- html5 file 上传文件
<body> <header> <h2>Pure HTML5 file upload</h2> </header> <div clas ...
- 【ASP.NET MVC】HTML5+MVC上传文件显示进度
head> <title>Index</title> <style type="text/css"> #statusBorder { po ...
- HTML5 jQuery+FormData 异步上传文件,带进度条
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <link href ...
- Ajax方式上传文件
用到两个对象 第一个对象:FormData 第二个对象:XMLHttpRequest 目前新版的Firefox 与 Chrome 等支持HTML5的浏览器完美的支持这两个对象,但IE9尚未支持 For ...
- HTML5关于上传API的一些使用(上)
HTML5提供了很多有用的API,其中就包括上传的API,XMLHttpRequest2.0,在HTML5时代之前,需要进行二进制的上传一般都会才用flash的方案,但是当XMLHttpRequest ...
随机推荐
- easyUI combobox combotree 模糊查询,带上下键选择功能,待完善。。。。
/2017年4月9日 11:52:36 /** * combobox和combotree模糊查询 * combotree 结果带两级父节点(手动设置数量) * 键盘上下键选择叶子节点 * 键盘回车键设 ...
- LazyMan深入解析和实现
一.题目介绍 以下是我copy自网上的面试题原文: 实现一个LazyMan,可以按照以下方式调用: LazyMan("Hank")输出: Hi! This is Hank! ...
- 12-openldap使用AD密码
阅读视图 本文严重参考 Openldap 整合windows AD认证 本文其他参考 OpenLDAP使用AD密码 Configuring OpenLDAP pass-through authenti ...
- 基于 node 搭建博客系统(一)
系统分为两端,分别实现. 管理员端: 功能 :个人信息,设置,发布随笔,随笔列表,删除随笔,查找,文章 等. 技术点:Boostrap + AdminLTE; 基于nodejs 实现的express ...
- 通过日志过滤的方法,统计每天内容详情页面的PV数
1.目的: 每天凌晨0点1分统计用户点击进入内容详情页的次数,对内容点击量形成榜单. 2.分析: A./data/log/epg.access.log日志实时打印用户访问页面的日志,并且每天凌晨0点会 ...
- 弱符号__attribute__((weak))
弱符号是什么? 弱符号: 若两个或两个以上全局符号(函数或变量名)名字一样,而其中之一声明为weak symbol(弱符号),则这些全局符号不会引发重定义错误.链接器会忽略弱符号,去使用普通的全局符号 ...
- Requests 校花网图片爬取
纪念我们闹过的矛盾,只想平淡如水 import requestsimport reurl = 'http://www.xiaohuar.com/list-1-%s.html'for i in rang ...
- mybatis 字段类型Data相
在项目中查询时间段的sql语句(时间类型为datetime或date)(数据库中的时间类型): <if test="beginTime!=null and beginTime!=''& ...
- 团队项目管理:Github项目误删恢复记录
参考: 准备更换git托管,如何迁移原git仓库 Github项目误删恢复记录 今天正常上线打卡,发现组织的线上Github仓库被误删了..本来是一场悲剧,所幸在本地的垃圾箱中翻出了还没有删除的本地仓 ...
- ABAP 内表访问表达式的性能
内表访问表达式是ABAP 7.4中引入的重要特性,可以使语句变得更加简洁.美观.那么它的读写性能怎么样呢?我进行了一点点测试. 读取 测试代码,使用三种方式读取同一内表,分别是read table关键 ...