// 监听用户点击文件上传按钮
$("input[type='file']").on("click", function(event){
// 创建一个新的 DataTransfer 对象
var dataTransfer = new DataTransfer();
// 遍历当前文件选择器中的文件并添加至dataTransfer
$.each(event.target.files, function(i, file){
dataTransfer.items.add(file);
});
// 监听选择文件后的回调
$(this).on("change", function(){
// 删除文件改变回调监听
$(this).off('change');
// 遍历用户选择的文件列表
$.each(event.target.files, function(i, file){
// 获取文件名称
var filename = file.name;
// 分割文件基础名称和扩展名称
var filenameArr = filename.split('.');
// 分割后的集合小于长度小于2的清空下说明没有扩展名,直接跳过
if(filenameArr.length < 2){
return true;
}
// 获取文件扩展名称并转换成小写
var ext = filenameArr.pop().toLowerCase();
// 扩展名不等于jpg时直接跳过
if(ext != 'jpg'){
return true;
}
// 将合格的文件添加进dataTransfer对象中
dataTransfer.items.add(file);
});
// 将dataTransfer.files赋值回 event.target.files,以更新文件输入框的文件列表
event.target.files = dataTransfer.files;
});
});
10-12
1867
08-25
287
07-28