当前位置:首页 » 《随便一记》 » 正文

html/javascript实现简单的上传

29 人参与  2023年04月03日 11:20  分类 : 《随便一记》  评论

点击全文阅读


一、 上传用到的按钮类型是type = file

二、 为了美化上传按钮,我们通常会自定义按钮,将默认的上传隐藏掉。

fileInputs.click() 触发上传按钮点击

三、 new FileReader()

读取文件内容方法:
readAsText() 读取文本文件,(可以使用Txt打开的文件)
readAsBinaryString(): 读取任意类型的文件,返回二进制字符串
readAsDataURL(): 方法可以将读取到的文件编码成DataURL ,可以将资料(例如图片、excel文件)内嵌在网页之中,不用放到外部文件
abort: 中断读取

文件的状态的获取:(根据自身情况使用)

onabort:读取文件断片时触发
onerror:读取文件错误时触发
onload:文件读取成功时触发 (这里我就简单的用了onload)
onloadend:文件读取完毕之后,不管成功还是失败触发
onloadstart: 开始读取文件时触发
onprogress:读取文件过程中触发

为了更直观的看到区别,我为大家截取了reader上传前后的数据。(如下图)

reader对象上传前的数据:

上传后通过readAsDataURL处理后的数据:

四、 file文件

const fileInputs = document.querySelector('.fileDoms')

console.log("file文件",fileInputs.files)

五、完整的代码展示

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <meta http-equiv="X-UA-Compatible" content="IE=edge">    <meta name="viewport" content="width=device-width, initial-scale=1.0">    <title>上传</title></head><body>    <div class="upload">        <img src="" alt="" style="width: 200px;height:200px;background:red;">        <button>点击上传</button>        <input type="file" style="display:none" class="fileDoms" onchange="changeFile()"/>    </div></body><script>    let btn  = document.querySelector(".upload button")    let img = document.querySelector(".upload img")    const fileInputs = document.querySelector('.fileDoms')    btn.onclick = btnclick    function btnclick(){        fileInputs.click()    }    function changeFile(){        console.log("上传")        let reader = new FileReader();        reader.readAsDataURL(fileInputs.files[0]);        reader.onload = function(a){            img.src = a.target.result; //等同于reader.result            console.log(a,reader,reader.result);          }    }    </script></html>


点击全文阅读


本文链接:http://zhangshiyu.com/post/58165.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 我们拥抱又分离+后续+结局(叶知霜陆昭野)列表_我们拥抱又分离+后续+结局(叶知霜陆昭野)我们拥抱又分离+后续+结局在线
  • 我们拥抱又分离番外+后续(叶知霜陆昭野)_我们拥抱又分离番外+后续叶知霜陆昭野
  • 鉴宝节目妻子白月光砸我传家宝,我选择罢演离婚全文免费在线阅读_[沈清周涛林靖]完结版全文
  • 我在回忆里万劫不复精彩节选(秦见鹿谢梵声)_我在回忆里万劫不复精彩节选
  • 迟迟白日晚全书+后续(路星延宋栀年)_(迟迟白日晚全书+后续)迟迟白日晚全书+后续列表_笔趣阁(路星延宋栀年)
  • 往梦难复温+全书+后续(沈淮霆宋思予)列表_往梦难复温(沈淮霆宋思予)往梦难复温+全书+后续在线
  • 兰因絮果,爱恨全如玉碎全书+后续+结局(谢长乐肖风行)列表_兰因絮果,爱恨全如玉碎(谢长乐肖风行)兰因絮果,爱恨全如玉碎全书+后续+结局在线
  • 从此星辰远,归途似海深人气节选(璃月龙影)全书免费_(璃月龙影)从此星辰远,归途似海深人气节选后续(璃月龙影)
  • 全文你来时风起云涌番外+(陆翊夏天瑜赵歆)列表_全文你来时风起云涌番外+
  • 人面兽小说精彩节选免费试读_小浩言语小蕊爆款小说高能章节试读
  • 你来时风起云涌免费(陆翊夏天瑜赵歆)
  • 四海八荒苦封喉,君心似毒酒结局+番外+后续看点十足(洛虞玄澈)_四海八荒苦封喉,君心似毒酒结局+番外+后续看点十足(洛虞玄澈)洛虞玄澈免费列表_笔趣阁(洛虞玄澈)

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1