当前位置: 首页 > 面试题库 >

如何使用jQuery检查文件输入大小?

骆利
2023-03-14
问题内容

我有一个具有文件上传功能的表单,如果用户尝试上传的文件太大,我希望能够有一些不错的客户端错误报告,是否有一种方法可以使用jQuery检查文件大小,或者纯粹是在客户端上还是以某种方式将文件发布回服务器以进行检查?


问题答案:

您实际上没有访问文件系统的权限(例如,读取和写入本地文件),但是,由于HTML5FileApi规范,您确实可以访问某些文件属性,并且文件大小是其中之一。

对于下面的HTML

<input type="file" id="myFile" />

尝试以下方法:

//binds to onchange event of your input field
$('#myFile').bind('change', function() {

  //this.files[0].size gets the size of your file.
  alert(this.files[0].size);

});

由于它是HTML5规范的一部分,因此仅适用于现代浏览器(IE需要v10)

旧版浏览器支持

请注意,旧的浏览器将为null上一次this.files调用返回一个值,因此访问this.files[0]将引发异常,您应在使用前检查FileAPI支持。



 类似资料:
  • 问题内容: 我在Windows中编写Python脚本。我想根据文件大小做一些事情。例如,如果大小大于0,我将向某人发送电子邮件,否则继续其他操作。 如何检查文件大小? 问题答案: 使用,并使用结果对象的成员: 输出以字节为单位

  • 问题内容: 我是新手。每当此字段发生“更改”时,我都试图从HTML“文件”字段中读取上载的文件路径。如果我使用“ onChange”,则可以使用,但是当我使用“ ng- change”以角度的方式使用时,则无法使用。 fileNameChaged() 从不调用。Firebug也不会显示任何错误。 问题答案: 不支持文件上传控件 https://github.com/angular/angular.

  • 问题内容: 我有一个输入文本是这样的: 哪些产生以下HTML 我想使用jquery设置此输入文​​本的值,所以我做到了: 但是,它不起作用…我的语法有什么错误? 问题答案: 您的选择器正在检索文本框的周围,而不是其内部的输入。 看到输出HTML后更新 如果ASP.NET代码可靠地输出具有id属性的HTML ,则可以更简单地使用: 如果失败,则需要在浏览器的错误控制台中确认没有其他脚本错误导致此操作

  • 问题内容: 我已经使用CSS设置了文件输入的样式: 一切正常,但是我想显示所选的文件名。使用CSS或jQuery怎么可能? 问题答案: 您必须绑定并触发元素上的change事件,并将文件名读取为:

  • 注意我使用Mybatis

  • 问题内容: 我正在使用FormPanel将文件上传到服务器。我要尝试做的是在上传文件之前,确保文件大小小于给定的大小(例如10MB)。在服务器端,我有一个javax.servlet.http.HttpServlet,在其中重写doPost。这里的HttpServletRequest参数具有文件的大小,但是问题是在文件已上传之前,我没有到达doPost。因此,如果我选择上传1 GB的文件,则在上传了