jam*_*mal 0 javascript validation error-handling file-upload
我有一个像这样的javascript代码来验证我的用户在我的服务器上上传图片时的文件扩展名.它应该允许.jpg和.jpeg照片但是只接受.jpg文件,如果照片以.jpeg结尾则无效这是代码:
function validate(x) {
var extensions = new Array("jpg", "jpeg");
var pos = x.lastIndexOf('.') + 1;
var ext = x.substring(pos, x.length);
var final_ext = ext.toLowerCase();
for (i = 0; i < extensions.length; i++) {
if (extensions[i] != final_ext) {
return 0;
break;
}
return 1;
}
Run Code Online (Sandbox Code Playgroud)
你觉得这个问题是什么?
应该
for (i = 0; i < extensions.length; i++) {
if (extensions[i] == final_ext) {
return 1;
}
}
return 0;
Run Code Online (Sandbox Code Playgroud)
还要注意的是return立即结束当前的功能,所以把一break后return是没有意义的.
最后,如果此Javascript在客户端运行(即在Web浏览器中),请记住用户可能会绕过此问题(例如,通过使用Firebug).您可能也希望在服务器端进行检查.