<input type=file>文件上传

更新日期: 2019-10-23阅读: 4.3k标签: input

<input> type 类型为 file 时使得用户可以选择一个或多个元素以提交表单的方式上传到服务器上,或者通过 Javascript 的 File api 对文件进行操作 .

 

常用input属性:

accept:指示file类型,没有时表示不限制类型,填入格式后选择文件时只能看见被允许的文件

accept="image/png" 或 accept=".png" 表示只接受 png 图片. 

accept="image/png, image/jpeg" 或 accept=".png, .jpg, .jpeg" 表示接受 PNG/JPEG 文件. 

accept="image/*" 接受任何图片文件类型. audio/* 表示音频文件video/* 表示视频文件

accept=".doc,.docx,.xml,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document" 接受任何 MS Doc 文件类型.

accept 属性并不会验证选中文件的类型. 他只是为开发者提供了一种引导用户做出期望行为的方式而已, 用户还是有办法绕过浏览器的限制。因此, 在服务器端进行文件类型验证是必不可少的。

multiple:Boolean ,指示用户能否多个输入,type为email或file时生效

required:指定用户在提交表单之前必须保证该元素值不为空。当 type 属性是 hidden,image 或者按钮类型(submit,reset,button)时不可使用。

:optional 和 :required css 伪元素的样式将可以被该字段应用作外观。


事件:

change事件


示例

<template>
  <div>
    <input type="file" id="upload" multiple @change="upload"></input>
  </div>
</template>

<script>
  export default {
    methods: {
      upload(e) {
        // 获取文件信息
        // 返回值是一个 FileList 对象,这个对象是一个包含了许多 File 文件的列表(你也可以像列表一样操作它).
        // 每个 File 对象包含了下列信息: 
            // name: 文件名.
          // lastModified: UNIX timestamp 形式的最后修改时间.
          // lastModifiedDate: Date 形式的最后修改时间.
          // size: 文件的字节大小.
          // type: 文件类型.
        // let files=document.getElementById(‘upload‘).files

        // 获取单个文件信息
        let file = e.target.files[0]
        // 文件信息获取后根据file.type判断类型,根据file.size限制判断大小,最后上传,建议上传单独一个写button
        const formdata = new FormData()
        formdata.append(‘file‘, file)
        // 调接口,data为formdata
      }
    }
  };
</script>


链接: https://fly63.com/article/detial/6600

input的type类型

对部分生僻的input属性值解释:type=reset可以一键清空form表单里面所有的数据、datalist的运用: 输入框输入的值会自动匹配datalist下拉框的值,input的list属性值必须和datalist的id值一致

如何做一个听话的输入框

在移动端的web开发中,一提起输入框,程序猿(媛)肯定有很多可以吐槽的点。在输入框的运用中,小编也是很心累呀~ ios中,输入框获得焦点时,页面输入框被遮盖,定位的元素位置错乱

input文本框强制输入指定文字的方法以及IE11的兼容

标签绑定了onkeyup键盘抬起事件以及onafterpaste粘贴文本进输入框两个事件,当有这两个操作时,就会触发相应的校验方法;当事件触发时,首先会有个变量imeStatus校验是否是IE浏览器,然后再根据正则校验进行输入框值的替换

input 输入框如何强转大写的2种方式

需要把一个input输入框内的字母自动转变为大写。1.使用JavaScript,在input标签添加onkeyup方法,将字符转为大写。2.使用CSS,给input设置样式。

使input文本框不可编辑的3种方法

disabled 属性规定应该禁用 input 元素,被禁用的 input 元素,不可编辑,不可复制,不可选择,不能接收焦点,后台也不会接收到传值。readonly unselectable=”on” 该属性跟disable类似

placeholder样式设置_字体颜色大小

怎么修改input、textarea元素中的placeholder属性样式?冒号前写对应的input或textarea元素等。 样式修改包括:颜色 大小 位置

H5移动端 input输入完成后页面底部留白问题

最近在用vue写几个H5页面在微信上展示,遇到一个在弹窗上input输入完成之后点击键盘的完成,页面底部留出一片空白的问题,当键盘抬起时,window.scrollY会从0变到键盘的高度

纯 JS 设置文本框的默认提示

HTML5 中有个新特性叫 placeholder,一般用它来描述输入字段的预期值,适用于 text、search、password 等类型的 input 以及 textarea。对用户来说,placeholder 就是文本框中的输入提示信息,往往是对预期值或预期格式的简短描述

Angular input中setter和getter的使用

Input 是Angular内部的属性装饰器,用来定义组件内的输入属性。在实际应用场合,通常用来实现父组件向子组件传递数据。有时候子组件单据的接收父组件传递过来的数据,不符合需求,需要另外处理数据

input 禁止输入特殊字符

方式一:拿到value值以后 在你传递之前处理;方式二:从最根本上也就是提示用户输入不了特殊字符;方式三:onkeyup事件 拿到以后去匹配 跟方式一类似;

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!