js 判断文件格式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 判断文件格式相关的知识,希望对你有一定的参考价值。
function isValidateFile(obj)
var extend = obj.value.substring(obj.value.lastIndexOf(".")+1);
if(extend=="")
else
if(!(extend=="xls"||extend=="doc"))
alert("请上传后缀名为xls或doc的文件!");
var nf = obj.cloneNode(true);
nf.value='';
obj.parentNode.replaceChild(nf, obj);
return false;
return true;
</script>
<form id="form1" name="form1" enctype="multipart/form-data" method="post" action="">
<label for="filefield"></label>
<input type="file" name="File1" id="File1" />
<input type="button" name="button" id="button" value="检测上传文件类型" onclick="isValidateFile('File1');" />
</form>
求帮忙查看错误
用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)"/> 参考技术A 应该是浏览器不兼容,另找了一个,试一下。如下:
<form id="form1" name="form1" enctype="multipart/form-data" method="post" action="">
<label for="filefield"></label>
<input type="file" name="file" id="file" />
<input type="button" name="button" id="button" value="检测上传文件类型" onclick="checkImg();"/>
</form>
<script>
function checkImg()
var fileWrong = "error" ;
var s =document.forms[0].file.value;
alert(s) ;
var isIE = navigator.userAgent.indexOf("MSIE");
s = s.substr(s.lastIndexOf(".")+1);
s = s.toLowerCase();
if(s!= "jpg" && s!= "png" && s!= "gif" && s!= "bmp")
alert(fileWrong);
return false;
var fileSize = 0;
if (isIE != -1)
// var filePath = s;
// var fileSystem = new ActiveXObject("Scripting.FileSystemObject");
// var file = fileSystem.GetFile (filePath);
// fileSize = file.Size;
var image = new Image();
image.src = s;
fileSize = image.fileSize;
else
fileSize = document.forms[0].pImg.files[0].size;
if(fileSize > 500000)
alert(size500);
return false;
return true;
</script>追问
谢谢 我想请问一下常用的浏览器有哪些
追答IE,腾迅TT,MAXTHON ,FIREFOX, OPERA ,世界之窗,Netscape,ucfly
等等等等。。。。。
这些内核都是基于IE的 有没有其他的
参考技术B 应该是浏览器不兼容,另找了一个,试一下。如下:<form id="form1" name="form1" enctype="multipart/form-data" method="post" action="">
<label for="filefield"></label>
<input type="file" name="file" id="file" />
<input type="button" name="button" id="button" value="检测上传文件类型" onclick="checkImg();"/>
</form>
<script>
function checkImg()
var fileWrong = "error" ;
var s =document.forms[0].file.value;
alert(s) ;
var isIE = navigator.userAgent.indexOf("MSIE");
s = s.substr(s.lastIndexOf(".")+1);
s = s.toLowerCase();
if(s!= "jpg" && s!= "png" && s!= "gif" && s!= "bmp")
alert(fileWrong);
return false;
var fileSize = 0;
if (isIE != -1)
// var filePath = s;
// var fileSystem = new ActiveXObject("Scripting.FileSystemObject");
// var file = fileSystem.GetFile (filePath);
// fileSize = file.Size;
var image = new Image();
image.src = s;
fileSize = image.fileSize;
else
fileSize = document.forms[0].pImg.files[0].size;
if(fileSize > 500000)
alert(size500);
return false;
return true;
</script> 参考技术C 传的参数不对
function isValidateFile(obj)
var extend = form1.File1.value.substring(form1.File1.value.lastIndexOf(".") + 1);
alert(extend);
if (extend == "")
else
if (!(extend == "xls" || extend == "doc"))
alert("请上传后缀名为xls或doc的文件!");
return false;
return true;本回答被提问者采纳
判断input[type=file]上传文件格式
input type="file" 在js中判断文件上传类型 function onSubmit(){ var form1 = document.forms[0]; var file = document.forms[0].getfile.value; if (file == null||file == ""){ alert("请选择要上传的图片!"); return false; } if (file.lastIndexOf(‘.‘)==-1){ //如果不存在"." alert("路径不正确!"); return false; } var AllImgExt=".jpg|.jpeg|.gif|.bmp|.png|"; var extName = file.substring(file.lastIndexOf(".")).toLowerCase();//(把路径中的所有字母全部转换为小写) if(AllImgExt.indexOf(extName+"|")==-1) { ErrMsg="该文件类型不允许上传。请上传 "+AllImgExt+" 类型的文件,当前文件类型为"+extName; alert(ErrMsg); return false; } document.forms[0].submit(); }
- input type="file"
- 在js中判断文件上传类型
- function onSubmit(){
- var form1 = document.forms[0];
- var file = document.forms[0].getfile.value;
- if (file == null||file == ""){
- alert("请选择要上传的图片!");
- return false;
- }
- if (file.lastIndexOf(‘.‘)==-1){ //如果不存在"."
- alert("路径不正确!");
- return false;
- }
- var AllImgExt=".jpg|.jpeg|.gif|.bmp|.png|";
- var extName = file.substring(file.lastIndexOf(".")).toLowerCase();//(把路径中的所有字母全部转换为小写)
- if(AllImgExt.indexOf(extName+"|")==-1)
- {
- ErrMsg="该文件类型不允许上传。请上传 "+AllImgExt+" 类型的文件,当前文件类型为"+extName;
- alert(ErrMsg);
- return false;
- }
- document.forms[0].submit();
- }
以上是关于js 判断文件格式的主要内容,如果未能解决你的问题,请参考以下文章
纯js判断文件流格式类型:pdf,doc,docx,xls,xlsx,ppt,pptx一次搞定!
java上传视频除了检查后缀,怎么判断文件格式,前8位来判断.flv格式有的00000018有的464C5601可靠么?求解