很多情况下,我们需要判断用户上传的图片格式是否符合规定,这很简单,只要截取到用户上传文件的后缀,并判断后缀是否为我们所规定的图片格式(后缀)就行了,下面转载了一个函数来实现这个功能,这个函数有两个参数,第一个参数是用户上传图片的路径及文件名称,第二个参数为当用户上传格式不符合规定时,给出的警告提示信息。
原文中,for循环当知道符合规定时,还要接着循环,这样效率就低了,因此,当得知图片格式正确时,就没有往下继续循环的必要了,添加上break后,就可以实现。
源代码如下所示:
function checkImgType(fileURL,strAlertMsg)
{
var Temp = false;
var right_type=new Array(".gif",".jpg",".jpeg",".png",".bmp"); //合法的图片格式,放在数组中
var right_typeLen=right_type.length; //获取数组的长度
var imgUrl=fileURL.toLowerCase(); //将图片的路径转换为小写形式
imgUrl=imgUrl.replace(/^(/s)*|(/s)*$/g,"");//去掉字符串两边的空格
var postfixLen=imgUrl.length; //获取要判断的图片路径的长度
var len4=imgUrl.substring(postfixLen-4,postfixLen); //截取路径的最后4个字符
var len5=imgUrl.substring(postfixLen-5,postfixLen); //截取路径的最后5个字符
//判断是否是图片格式
for (i=0;i<right_typeLen;i++)
{
if((len4==right_type[i])||(len5==right_type[i])) //如果截取的后四个字符或后五个字符与数组中的某个相同
{
Temp = true; //就是合法的图片格式
break; //结束循环
}
}
if (Temp == false) //如果标识为false,说明不是合法的图片格式,给出警告信息,并返回true值
{
alert(strAlertMsg);
return false;
}
else //否则返回false
{
return true;
}
}
这个方法很重要,只要将其添加到你的js文件中或者放到页面中的<script>和</script>之间就行了。
新闻热点
疑难解答