js实现单张图片(或者多张)的预览功能
这个是预览单张图片的,如果要预览多张图片,改下面红色标记的地方就好了
<
html
>
<
head
>
<
meta
http-equiv
=
"Content-Type"
content
=
"text/html; charset=gb2312"
/>
<
title
>js图片预览功能</
title
>
<
script
language
=
javascript
>
function previewFile() {//名字相应的也要改,在input的onchange
=
"previewFile()"
也要记得对应好
var preview = document.querySelector('img');//这个是在下面input框里面加入id="xx",要写入xx的,要写成这样(‘#xx’)
var file = document.querySelector('input[type=file]').files[0];//这个下标也相对应的来改,第一个的图片是下标是0,那么第二个图片的话,下标就要是1,以此类推
var reader = new FileReader();
reader.onloadend = function () {
preview.src = reader.result;
}
if (file) {
reader.readAsDataURL(file);
} else {
preview.src = "";
}
}
</
script
>
</
head
>
<
body
>
<
input
type
=
"file"
onchange
=
"previewFile()"
><
br
>
<
img
src
=
""
height
=
"200"
width
=
"300"
alt
=
"Image preview... id="xx"
/>
</
body
>
</
html
>
再或者用另一种方式(推荐使用)
<script language=javascript>
function showImg(fileid,target){//给2个参数,其他位置的参数名一致,值就进去了
var preview = document.querySelector('#'+target);//获取img元素,显示图片位置,根据el表达式('#'+target)
var file = document.querySelector('#'+fileid).files[0];//根据id拿到文件选择框里面的文件,
var reader = new FileReader();//创建FileReader接口(把文件放到图片预览框里面)
reader.onloadend = function () {
preview.src = reader.result;
}
if (file) {
reader.readAsDataURL(file);
} else {
preview.src = "";
}
}
</script>
然后下面对应的input框