我正在尝试验证input type =“file”字段的文件扩展名。但即使我上传了一个正确的文件,它也会给我错误。我读过W3Schools和其他网站,我看不出我的代码有什么问题:
http://pastebin.com/GwE0aVaf - 这是第一个函数底部的IF语句。
提前致谢。
答案 0 :(得分:2)
问题是在if语句中它总是 true 。你有:
if(fileName.lastIndexOf(".jpg") == -1 || fileName.lastIndexOf(".png") == -1)
其中一个将永远是真实的,因为整个表达都是真的。 可能你会想要使用AND(&& )代替OR( || )。
if(fileName.lastIndexOf(".jpg") == -1 && fileName.lastIndexOf(".png") == -1)
解决了中级问题,但这种类型的检查总是有问题,因为如果文件名是“c:\ sample.jpg.zip”,它将是有效的。
您应该使用 endsWith()函数或适当的Regex来验证扩展名是否在字符串的末尾。