当前位置:首页 » 文件管理 » js判断文件上传类型

js判断文件上传类型

发布时间: 2022-08-28 19:33:34

1. js 判断上传文件的大小和类型

这个确实很麻烦,而且,有点费事,
不管你js怎么检测,最终还是要使用服务器端语言去检测
相对安全而已,用户是可以在客户端禁用js的,甚至修改js脚本
在客户端先检测一下,只是为了方便而已。。。

2. 利用 JS在客户端判断文件上传的真实格式(获取文件后缀的朋友就不要回答了) 急!

你在谷歌浏览器打开控制台,输入document.getElementById('file').files,这个方法也可以用来获取文件的大小,如果file有选择文件的话会显示filelist会有type出现,不过我试了一下,效果跟获取文件后缀名差不多,而且前端验证很容易欺骗,安全性考虑都会在后端重新验证。

3. 怎样用JS控制文件上传时FILE控件内默认的文件类型

有两种方式,
1、用fileupload控件在后台判断
FileUpload1.FileContent.Length判断大小,
System.IO.Path.GetExtension(FileUpload1.FileName)获取文件后缀
2、用jquery上传控件,可以直接判断类型和大小
另外js也可以在前台判断文件类型,但不能获取文件大小,需要引用插件

4. jquery.load.js怎么判上传文件类型

下面是我用jquery写的选中后立马判断选中的文件的类型,不是的话提示,然后清除,对应的可以自己改成纯js形式:
//文件上传文件选择后事件
$(document).ready(function() {
$("input[id^='fileToUpload']").each(
//这里是用了each因为是多文件上传,input的id都是fileToUpload 开头
function() {
$("#" + $(this).attr("id") + "").live('change',function() {
var fileName = $(this).val();
if (fileName != null&& fileName != "") {
//lastIndexOf如果没有搜索到则返回为-1
if (fileName.lastIndexOf(".") != -1) {
var fileType = (fileName.substring(fileName.lastIndexOf(".") + 1,
fileName.length)).toLowerCase();
var suppotFile = new Array();
suppotFile[0] = "jpg";
suppotFile[1] = "gif";
suppotFile[2] = "bmp";
suppotFile[3] = "png";
suppotFile[4] = "jpeg";
for ( var i = 0; i < suppotFile.length; i++) {
if (suppotFile[i] == fileType) {
if (fileName.length > 100) {
alert("文件名长度不能超过100字符");
if (!window.addEventListener) {
document.getElementById(fileName[j]).outerHTML+=''; //IE清除inputfile
}else {
document.getElementById(fileName[j]).value = ""; //FF清除inputfile
}
return false;
}
return true;
} else {
continue;
}
}
alert("文件类型不合法,只支持 jpg、gif、png、jpeg类型!");
if (!window.addEventListener) {
document.getElementById(fileName[j]).outerHTML+=''; //IE
}else {
document.getElementById(fileName[j]).value = ""; //FF
}
return false;
} else {
alert("文件类型不合法,只支持 jpg、gif、png、jpeg类型!");
if (!window.addEventListener) {
document.getElementById(fileName[j]).outerHTML+=''; //IE
}else {
document.getElementById(fileName[j]).value = ""; //FF
}
return false;
}
}
});
});
});

5. js怎么判断和控制表单上传文件的大小和类型

ajax 是无法实现上传文件的,可以想一下ajax与后台通信都是通过传递字符串,怎么能传递文件呢?其实出于安全考虑js是不能操作文件的

6. JS php 如何判断上传的文件类型

通过分离出文件名,将.后面的类型名称提取出来

7. js怎么验证上传的文件是excel

一般在js获取文件上传路径,然后得到文件后缀,然后根据后缀进行判断。

8. js怎么验证上传的文件是excel-CSDN论坛

对头,前端不能从文件内容验证,只能从后缀来判断,从文件判断只能在服务器去判断了。

9. js文件上传验证文件类型第一个为文本,第二个为MP3格式,第三个为jpg 如何动态验证求解

下面是一个完整的HTML文档,你可以复制后进行直接测试。


代码中有必要的注释:

<!doctypehtml>
<html>
<head>
<metacharset="utf-8">
<title>文件类定义</title>
</head>

<body>
<formmethod=postname=upformaction=""enctype="multipart/form-data">
<divid="file"style="margin-top:60px;width:auto;hegiht:auto;"></div>
<ahref="javascript:void(0)"onclick="addUpload()">添加附件</a>
<spanclass="required">语音文件</span>
<inputname="btn_up"class="cmd"type="button"id="btn_up"value="上传"style="cursor:hand"onclick="ajaxFileUpload(this.form,this.form.txt1.value)">
</form>
<scripttype="text/javascript">
varcount=0;
varmaxfile=3;
//增加元素
functionaddUpload(){
if(count>=maxfile)return;//限制最多maxfile个文件框
count++;
//自增id不同的HTML对象,并附加到容器最后
varnewDiv="<divid=divUpload"+count+">"
+"请选择上传的音频,图片,或文字,第"+count+"帧"
+"<br/>"
//下面的每一个input中,都加入了onchange事件,用以在选择完新文件后对其进行判断
//同时第二参数用以限定本输入框中的文件类型
+"文本:<inputname=txt"+count+"type=filemaxlength=30style=width:60%onchange='confirmType(this,"txt")'/><br/>"
+"图片:<inputname=img"+count+"type=filemaxlength=30style=width:60%onchange='confirmType(this,"img")'/><br/>"
+"MP3:<inputname=voice"+count+"type=filemaxlength=30style=width:60%onchange='confirmType(this,"voice")'/><br/>"
+"<inputtype=buttonvalue=删除onclick=delUpload('divUpload"+count+"')/>"
+"</div>";
document.getElementById("file").insertAdjacentHTML("beforeEnd",newDiv);
}

functionconfirmType(th,ty){
varv=th.value;
if(ty=='txt'&&/.txt$/i.test(v)){//如果是文本框
th.style.color='#090';//正确为绿色显示
}elseif(ty=='img'&&/.jpg$/i.test(v)){//如果是图片框
th.style.color='#090';//正确为绿色显示
}elseif(ty=='voice'&&/.mp3$/i.test(v)){//如果是MP3框
th.style.color='#090';//正确为绿色显示
}else{
th.style.color='#F00';//错误为红色显示
alert('您所选择的文件类型不正确');
}
}
</script>
</body>
</html>

10. js 判断文件格式

实现如下:
用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)"/>

热点内容
怎么让微软平板变安卓 发布:2024-10-13 05:13:22 浏览:438
安卓版浏览器的收藏在哪里 发布:2024-10-13 03:45:13 浏览:650
数据库分量 发布:2024-10-13 03:36:52 浏览:189
安卓系统变为什么系统 发布:2024-10-13 03:24:52 浏览:847
华为4x重置密码是多少 发布:2024-10-13 03:08:31 浏览:279
荣放安卓屏的蓝牙如何关闭 发布:2024-10-13 02:50:49 浏览:58
c语言学完 发布:2024-10-13 02:28:52 浏览:611
酒商城源码 发布:2024-10-13 01:58:54 浏览:138
我的世界服务器圈地设计 发布:2024-10-13 01:46:16 浏览:221
配置升级到什么型号好 发布:2024-10-13 01:38:35 浏览:197