表单需要上传附件,就需要对附件的大小进行限制。本屌使用的是:
function checkUploadFile(){
var flag=true;
var browser=navigator.appName;
var b_version=navigator.appVersion;
var version=b_version.split(";");
if(browser=="Microsoft Internet Explorer"){
var trim_Version=version[1].replace(/[ ]/g,"");
}else{
var trim_Version="";
}
if(browser=="Microsoft Internet Explorer" && (trim_Version=="MSIE6.0"||trim_Version=="MSIE7.0"||trim_Version=="MSIE8.0"||trim_Version=="MSIE9.0")){
flag=false;
}else{
flag=true;
}
var file = document.getElementById("file_extra"); //拿到上传文件对象,里面有个叫files的数组(只有IE10以上和谷歌里面叫这个)
if(flag){
var filesize = file.files[0].size;
}else{
var filesize = file.filters[0].size; //IE6-9里面叫filters
}
if(filesize>1048576){
alert("上传附件大于1M,请重新选择!");
return false;
}else{
return true;
}
}
用自带的size(单位是byte)的值来判断是否大于1M,别的方法没试过,只是自己找出的这个方法,在提交的时候调用来验证。这个方法有什么不好我也不知道,大家有什么好方法么,不用到服务器端验证的方法~~