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;
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值