gpt4 book ai didi

javascript - 用于检查文件扩展名的 javascript 问题

转载 作者:行者123 更新时间:2023-11-30 12:26:49 25 4
gpt4 key购买 nike

我已经编写了用于检查文件扩展名的 javascript

 function Validate() {
try {
var Name = document.getElementById('<%=fiFile.ClientID %>').value;
if (Name == "") {
return false;
}
else {
var index = Name.lastIndexOf('\\') + 1;
var FileName = Name.substring(index, Name.length);


var ext = extension(FileName)

switch (ext) {
case 'jpg':
case 'gif':
case 'png':
case 'bmp':
case 'pdf':
case 'txt':
case 'doc':
case 'docx':
case 'xls':
case 'xlsx':
case 'xlr':
case 'mdf':
case 'ppt':
case 'pptx':
case 'msg':
case 'log':
case 'bak':
case 'xml':
case 'html':
case 'mp3':
case 'm4a':
case 'm3u':
case 'mid':
case 'wma':
case 'wav':
case 'mp4':
case 'mpg':
case 'm4v':
case 'vob':
case 'mnv':
case 'rm':
case 'mov':
case 'flv':
case 'wmv':
return true;
break;
default:
alert('Select a proper file');
return false;
}
}
}
catch (err) {
alert(FileName);
}
}

function extension(fname) {
try {
var pos = fname.lastIndexOf(".");
var strlen = fname.length;
if (pos != -1 && strlen != pos + 1) {
var ext = fname.split(".");
var len = ext.length;
var extension = ext[len - 1].toLowerCase();
} else {
extension = "No extension found";
}
}
catch (errr)
{ }
return extension;
}

当我上传其他文件(如 .exe)时,页面仍会刷新并保存文件。我希望当用户上传带有其他扩展名的文件时,页面不应该刷新并且文件不应该被保存。请帮助我!!!

最佳答案

为什么不直接使用 HTML5 方式进行文件选择?

<input type="file" accept="image/*, video/*, audio/* application/msword, application/vnd.ms-excel, application/vnd.ms-powerpoint">

您始终可以添加我遗漏的 MIME 类型或根据您的意愿进行调整,但此文件将限制要支持的文件类型,因此您不必对其进行显式检查。

关于javascript - 用于检查文件扩展名的 javascript 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29071068/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com