我想在 Javascript
中进行验证,文件名应该是特定类型,应该像示例一样上传。
我有一个文件上传控件,它具有上传多个文件的功能。
这是它的 html。
<asp:FileUpload runat="server" ID="flufileUpload" AllowMultiple="true" onchange="return ValidateFileType(this);" />
所以在上传时我希望用户上传特定名称的文件
喜欢:-
一个用户只能上传 5 个名称为 as 的文件
1 -> 120.jpg
2 -> 150.jpg
3 -> 180.jpg
4 -> 210.jpg
5 -> 240.jpg
如果用户上传的文件名不是这个那么它应该提示警告消息。
我处理一些验证的函数如下。但我无法处理文件名验证。
function ValidateFileType(controlName) {
try {
var uploadControl = controlName;
var isCValidFile = false;
for (var i = 0; i < uploadControl.files.length; i++) {
isCValidFile = false;
var path = uploadControl.files[i].name;
var ext = path.substring(path.lastIndexOf(".") + 1, path.length).toLowerCase();
if (path != "") {
for (var j = 0; j < ValidImageFileExtension.length; j++) {
if (ext == ValidImageFileExtension[j]) {
isCValidFile = true;
break;
}
}
if (!isCValidFile) {
jAlert("Invalid File. Please upload a File with extension " + ValidImageFileExtension.join(", "), "Information");
uploadControl.value = '';
isCValidFile = false;
break;
}
else if (uploadControl.files[i].size > 15728640) {
jAlert("Please check file size should be less than 15 MB.", "Information");
uploadControl.value = '';
isCValidFile = false;
break;
}
}
else {
jAlert("Please select File", "Information");
isCValidFile = false;
break;
}
}
return isCValidFile;
} catch (e) {
isCValidFile = false;
jAlert("Error occurred on validate file.", "Error");
return isCValidFile;
}
}
最佳答案
您可以使用有效文件名对象检查文件名,并且您还需要知道哪个选项卡处于事件状态。你可以使用下面的代码
var Tabtype = document.getElementById('hdnType').value;
if (Tabtype == "Panaromic") {
var validFileName = {
"120.jpg": 1, "150.jpg": 1, "180.jpg": 1, "210.jpg": 1, "240.jpg": 1,
}
}
if (Tabtype == "Satellite") {
var validFileName = {
"55.jpg": 1, "74.jpg": 1, "83.jpg": 1, "935.jpg": 1,
}
}
if (Tabtype == "SitePlot") {
var validFileName = 0;
}
if (path != "") {
if(validFileName && !isFileNameValid(path)){
jAlert("Invalid File. Please upload a File with extension " +
ValidImageFileExtension.join(", "), "Information");
uploadControl.value = '';
isCValidFile = false;
break;
}
...
关于Javascript验证以插入特定名称的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44968035/