js验证表单提交图片

[定义和用法]
lastIndexOf() 方法可返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索。

[语法]
stringObject.lastIndexOf(searchvalue,fromindex)
[searchvalue] 必需。规定需检索的字符串值。
[fromindex] 可选的整数参数。规定在字符串中开始检索的位置。它的合法取值是 0 到 stringObject.length - 1。如省略该参数,则将从字符串的最后一个字符处开始检索。



// 检测浏览器内核
var Sys = {};
if(navigator.userAgent.indexOf("MSIE")>0) {
	Sys.ie=true;
}
if(navigator.userAgent.indexOf('Trident')>0) {
	Sys.ie_plus=true;
}
if(isFirefox=navigator.userAgent.indexOf("Firefox")>0){
	Sys.firefox=true;
}
if(isChrome=navigator.userAgent.indexOf("Chrome")>0){
	Sys.chrome=true;
}

// 验证FileUpload对象
function validateFile(obj, size, types) {
	if(!types){
		types = new Array('jpg','png','gif','bmp','jpeg');
	}else{
		types = types.split(',');
	}
	var self_size = 200*1024;
	if(!size){
		size = $(obj).siblings('input[name="MAX_FILE_SIZE"]').val();
		if(!size) size = self_size ;
	}
	var boolResult = false;
	var imgLength = obj.value.length;
	if(imgLength != 0) {
		var fileName = obj.value;
		var fileType = (fileName.substring(fileName.lastIndexOf(".")+1,fileName.length)).toLowerCase();
		for (var i = 0; i < types.length; i++) {
			if (types[i] == fileType) {
				boolResult=true;
				break;
			} else{
				continue;
			}
		}
		if(!boolResult){
			 alert("文件格式错误!");
			 obj.value='';
			 if(Sys.ie){
			 	obj.outerHTML = obj.outerHTML;
			 }
			 return false;
		}
		var filesize = 0;
		if(Sys.firefox || Sys.chrome || Sys.ie_plus){
			filesize = obj.files[0].size;
			if(filesize>size){
				alert('附件太大,请进行图片处理后上传');
				obj.value='';
				return false;
			}
		}else if(Sys.ie){
			var fso,f;
			try {
				fso=new ActiveXObject("Scripting.FileSystemObject");
				if(!fso){
					alert('加载控件失败,请设置浏览器安全"不允许运行未标记为安全的activeX控件"设置为启用');
					return false;
				}
				f=fso.GetFile(getPath(obj));
				filesize = f.size;
				if(filesize>size){
					alert('附件太大,请进行图片处理后上传');
					obj.outerHTML = obj.outerHTML;
				}
			} catch (e) {
				alert('加载控件失败,请设置浏览器安全"不允许运行未标记为安全的activeX控件"设置为启用');
				obj.value='';
				obj.outerHTML = obj.outerHTML;
			}
		}
	}
	return boolResult;
}
// 获取FileUpload对象文件名方法
function getPath(obj){ 
	if(obj){
		if (window.navigator.userAgent.indexOf("MSIE")>=1){
			obj.select();
			return document.selection.createRange().text;
		}
		else if(window.navigator.userAgent.indexOf("Firefox")>=1)
		{
			if(obj.files){
				return obj.value;
			}
			return obj.value;
		}
		return obj.value;
	}
}

猜你喜欢

转载自zzz200100.iteye.com/blog/2360824