站长资讯网
最全最丰富的资讯网站

vue.js怎么隐藏input file

vue.js隐藏input file的方法:1、将input的z-index设置为1以上的数字并覆盖到需要点击的内容上;2、将input的样式opacity设置为0(即为透明度为0);3、通过绑定在input上的change事件触发即可。

vue.js怎么隐藏input file

本文操作环境:windows10系统、vue.js 2.9、thinkpad t480电脑。

vue隐藏input file一般有三种方式,一种是使用HTML的lable机制触发input事件,一种是使用使用input透明覆盖,还有一种是使用vue的ref参数直接操作input的点击事件触发来实现。那么我们该如何使用这三种方式来实现隐藏input file呢?下面我们就来一起看看这三种方法。

1、使用HTML的lable机制触发input事件

lable上的for属性绑定input的id,即可通过触发lable上的点击事件触发input的change事件

<el-link type="primary">   <label for="recordExcel">上传文件|</label> </el-link> <form id="recordExcelForm" style="display:none">    <input type="file" id="recordExcel" name="recordExcel" @change="fileChange" /> </form>fileChange(){};//

2、使用使用input透明覆盖

将input的z-index设置为1以上的数字并覆盖到需点击的内容上,将input的样式opacity设置为0(即为透明度为0),这样通过绑定在input上的change事件触发

<p class="uploadImg">   <input type="file" @change="picUpload($event)" accept="image/*" /></p>
.uploadImg {   width: 100%;   height: 1.46rem;   position: relative;   input {    width: 1.46rem;    height: 100%;    z-index: 1;    opacity: 0;    position: absolute;    cursor: pointer;   } }

3、使用vue的ref参数直接操作input的点击事件触发

<div class="upload-btn-box">   <Button @click="choiceImg" icon="ios-cloud-upload-outline" type="primary">点击上传</Button>   <input ref="filElem" type="file" class="upload-file" @change="getFile" style="display:none">  </div>   choiceImg(){ this.$refs.filElem.dispatchEvent(new MouseEvent('click')) } getFile(){ console.log("成功"); }

推荐学习:php培训

赞(0)
分享到: 更多 (0)

网站地图   沪ICP备18035694号-2    沪公网安备31011702889846号