对上传图片进行限制,只允许上传小于2M的图片,用遨游2没问题,但用纯IE7居然不起作用,在Firefox下面也没用
代码如下
var imgSize = 1024 * 2048;
var error = 0;
function checkImgSize(){
var file = document.getElementById("fileObject");
if(file.value != ""){
//检测类型
var val = file.value.toLowerCase();
if(/^.*?\.(gif|jpg|jpeg)$/.test(val)){
}else{
alert("作品格式不正确,必须是jpg图片、jpeg图片或者gif图片");
return false;
}
var img = new Image();
alert("error="+error);
img.src = val;
alert("img.src="+img.src);
alert(1);
if(img.readyState){ //IE
img.onreadystatechange = function(){
alert(2);
if(img.readyState == "complete"){
alert(3);
if(img.fileSize <=0 || img.fileSize > imgSize){
alert("当前文件大小超出最大限制" + imgSize / (1024 * 1024) + "MB");
error=1;
}
}
}
}else{ //FF
img.onload = function(){
alert(4);
if(img.fileSize <=0 || img.fileSize > imgSize){
alert("当前文件大小超出最大限制" + imgSize / (1024 * 1024) + "MB");
error=1;
}
}
} }
if(error == 0){
Dosubmit();
}else{
error = 0;
}
}
代码如下
var imgSize = 1024 * 2048;
var error = 0;
function checkImgSize(){
var file = document.getElementById("fileObject");
if(file.value != ""){
//检测类型
var val = file.value.toLowerCase();
if(/^.*?\.(gif|jpg|jpeg)$/.test(val)){
}else{
alert("作品格式不正确,必须是jpg图片、jpeg图片或者gif图片");
return false;
}
var img = new Image();
alert("error="+error);
img.src = val;
alert("img.src="+img.src);
alert(1);
if(img.readyState){ //IE
img.onreadystatechange = function(){
alert(2);
if(img.readyState == "complete"){
alert(3);
if(img.fileSize <=0 || img.fileSize > imgSize){
alert("当前文件大小超出最大限制" + imgSize / (1024 * 1024) + "MB");
error=1;
}
}
}
}else{ //FF
img.onload = function(){
alert(4);
if(img.fileSize <=0 || img.fileSize > imgSize){
alert("当前文件大小超出最大限制" + imgSize / (1024 * 1024) + "MB");
error=1;
}
}
} }
if(error == 0){
Dosubmit();
}else{
error = 0;
}
}
在服务器端还是可以判断的,根据file文件进行判断length
js中应该要用到shell命令吧,这个不安全