<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<!--
操作文件,客户端最常见的方式,就是用文件域做选取
默认可以选择任何类型的文件,可以用accept控制选择的mime类型
默认只能选择一个文件,如果想多选,需要设置multiple属性 multiple属性指明了该file控件可进行多选操作
-->
选择多个文件
<input id="file1" type="file" accept="image/*" multiple/>
<br />
选择单个文件
<input id="file2" type="file" accept="*/*"/>
<div id="div1">
<!--显示文件信息-->
</div>
<input type="button" id="btn" name="btn" value="onclick"/>
<script>
var btn=document.getElementById("btn");
btn.οnclick=function(){
alert("再也不用在html添加onclick属性了,这个好!!!");
}
//获得dom对象
var file1 = document.getElementById('file1');
var file2 = document.getElementById('file2');
var div1 = document.getElementById('div1');
//选择文件触发事件
file1.onchange = function(e) {
//获得选取文件列表的集合
var files = this.files;
// alert('选择了' + files.length + '个文件');
var html = [];
//遍历文件列表
for (var i = 0;i < files.length;i ++) {
//获得当前文件对象
var f = files[i];
//读取文件信息拼接字符串放到数组中
//arrayObj. push([item1 [item2 [. . . [itemN ]]]]);
// 将一个或多个新元素添加到数组结尾,并返回数组新长度
html.push('<p>' + f.name + ',' + (f.type||'未知类型') + ',' + f.size + '字节</p>');
}
//在div1中显示文件信息
//arrayObj.join(separator);
//返回字符串,这个字符串将数组的每一个元素值连接在一起,中间用 separator 隔开。
div1.innerHTML = html.join('');
}
file2.onchange = function(e) {
//获得选取文件列表的集合
var files = this.files;
// 获得当前文件对象
var f = files[0];
//读取文件信息拼接字符串
div1.innerHTML = '<p>' + f.name + ',' + (f.type||'未知类型') + ',' + f.size + '字节</p>';
}
</script>
</body>
</html>
与上面的区别是:自己仿照上面写οnchange=function(e){}时,执行报错!
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<!--选择多个文件:<input id"file1" type="file" accept="image/gif,image/png,image/jpeg" multiple/><br/><br/>-->
选择多个文件:<input id"file1" type="file" accept="image/*" multiple="multiple" οnchange="filecheck(this)"/><br/>
<div id="div1"></div>
<script>
var file1=document.getElementById("file1");
var file2=document.getElementById("file2");
var div1=document.getElementById("div1");
function filecheck(obj){
var files=obj.files;
var html=[];
for (var i=0;i<files.length;i++) {
var file=files[i];
var str=" 文件名称: "+file.name+" 文件类型:"+file.type+" 文件大小:"+file.size+"文件路径:"+file.+"<br/>";
html.push(str);
}
console.log(html);
div1.innerHTML=html.join("");
}
</script>
</body>
</html>