可通过下面的方式
html代码: js代码:
var fileId = "uploadtest"
var dom = document.getElementById(fileId)
var fileSize = dom.files[0].size//文件的大小,单位为字节B
$("#ms_upload_file").change(function(){//检验非空和文件大小
if($(this).val() !== '' &&checkSize(this)) {//其他操作
}
})/**
* 函数:检查上传文件大小
* 输入:input的js对象
* 输出:
**/function checkSize(input) {
var Sys = {} var flag var filesize = 0 //判断浏览器种类
if (navigator.userAgent.indexOf("MSIE") >0) {
Sys.ie=true
}if (navigator.userAgent.indexOf("Firefox")>0) {
Sys.firefox=true
}//获取文件大小
if (Sys.firefox) {
filesize = input.files[0].size
} else if (Sys.ie){var fileobject = new ActiveXObject ("Scripting.FileSystemObject")//获取上传文件的对象
var file = fileobject.GetFile (input.value)//获取上传的文件
filesize = file.Size//文件大小
}//判断是否符合要求
if (filesize / (1024 * 1024) <5 ) {
flag = true
} else {
alert("附件过大,建议不要超过5M!")
flag = false
}return flag
}
这样设置的:
1、先用form标签创建一个上传的表单。
<form id="form1" name="form1" method="post" action="" enctype="multipart/form-data"><p><input type="hidden" name="MAX_FILE_SIZE" value="100000" /></p>
<p><input name="userfile" id="userfile" type="file" onchange="check()"/></p>
</form>
2、用Javascript设置格式和大小。
<script language="JavaScript" type="text/javascript"> function check() {var aa=document.getElementById("userfile").value.toLowerCase().split('.')//以“.”分隔上传文件字符串 // var aa=document.form1.userfile.value.toLowerCase().split('.')//以“.”分隔上传文件字符串 if(document.form1.userfile.value=="") { alert('图片不能为空!') return false } else { if(aa[aa.length-1]=='gif'||aa[aa.length-1]=='jpg'||aa[aa.length-1]=='bmp'||aa[aa.length-1]=='png'||aa[aa.length-1]=='jpeg')//判断图片格式 {var imagSize = document.getElementById("userfile").files[0].sizealert("图片大小:"+imagSize+"B")if(imagSize<1024*1024*1) alert("图片大小在1M以内,为:"+imagSize/(1024*1024)+"M") return true } else { alert('请选择格式为*.jpg、*.gif、*.bmp、*.png、*.jpeg 的图片')// return false } } } </script>
图片超过1M则不能上传 如图: