隐藏文件上传input样式同时对上传的文件格式进行校验

Posted BubbleSort

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了隐藏文件上传input样式同时对上传的文件格式进行校验相关的知识,希望对你有一定的参考价值。

首先是对文件上传input样式进行隐藏:

<a class="link uploadPhoto" href="#" onclick="upload_file.click()">

<input type="file" class="form-control" id="upload_file" name="upload_file" style="display: none;"onchange="addPic() ;"/>

上传照片</a>

说明:将input元素放到其它任意Element中间,设置格式为style="display: none;"隐藏,同时外面的元素设置onclick(onclick="upload_file.click()")事件,

当外面的元素被点击是触发input的点击事件,剩下的就是对外面

的元素进行美化的过程啦!

下面就是对上传的文件进行校验啦:

function addPic() {
var objFile = document.getElementById("upload_file");

//重点在这里,可以获得上传的文件;
var file=objFile.files[0];
var name=file.name.toLowerCase();
alert(name);
if (name.indexOf(".png") > -1 || name.indexOf(".gif") > -1
|| name.indexOf(".jpg") > -1) {
//可以利用ajax进行照片回显
} else {
$.ligerDialog.warn("请选择*png,*gif,*jpg类型图片!");
}
};

以上是关于隐藏文件上传input样式同时对上传的文件格式进行校验的主要内容,如果未能解决你的问题,请参考以下文章

原生js使用input实现文件上传

input file 文件上传,js控制上传文件的大小和格式

input file 文件上传,js控制上传文件的大小和格式

上传下载文件

vue框架实现文件上传功能

layui.upload上传文件的同时怎么传递一个参数