用js对上传的文件大小以及格式进行初步的判断,在服务端再进行一次判断
//判断照片大小
function getPhotoSize(obj){
photoExt=obj.value.substr(obj.value.lastIndexOf(".")).toLowerCase()//获得文件后缀名
if(photoExt!='.jpg'){
alert("请上传后缀名为jpg的照片!")
return false
}
var fileSize = 0
var isIE = /msie/i.test(navigator.userAgent) &&!window.opera
if (isIE &&!obj.files) {
var filePath = obj.value
var fileSystem = new ActiveXObject("Scripting.FileSystemObject")
var file = fileSystem.GetFile (filePath)
fileSize = file.Size
}else {
fileSize = obj.files[0].size
}
fileSize=Math.round(fileSize/1024*100)/100//单位为KB
if(fileSize>=10){
alert("照片最大尺寸为10KB,请重新上传!")
return false
}
}
jsp页面:
<input type="file" id="imgFile" name="upload" style="width:150px" onchange="getPhotoSize(this)"/>
<!DOCTYPE html><html>
<head>
</head>
<body>
<!-- html -->
<div class="box">
<input type="file" name="" id="file">
</div>
<script src="http://lib.sinaapp.com/js/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript">
$("#file").change(function(){
var fileName = $(this).val()
var suffix = fileName.split(".")[1]
if (suffix == "rar") {
alert("上传的是rar文件")
} else {
alert("上传的是其他文件")
}
})
</script>
</body>
</html>
选中文件后通过截取.后面的字符串来判断文件是以什么结尾的就可以判断该文件的类型了。
上面代码你选中一个文件后,页面会弹出你选择的文件是否为rar格式的文件。
效果图