Home >Web Front-end >JS Tutorial >js method to determine file type size and give prompts

js method to determine file type size and give prompts

小云云
小云云Original
2018-01-05 09:27:501541browse

This article mainly shares with you an implementation method of JS judging the file type size and giving prompts. It has a good reference value and I hope it will be helpful to everyone. Let’s follow the editor to take a look, I hope it can help everyone.

Uploading files is a commonly used function in work. Different scenarios have different requirements for different file types and file sizes:

<form id="uploadForm" method="post" class="layui-form">
  <p class="layui-form-item">
  <label class="layui-form-label">名称</label>
  <p class="layui-input-block">
   <input type="text" name="name" required lay-verify="required"
   placeholder="请输入文件名" autocomplete="off" class="layui-input">
  </p>
  </p>
  <p class="layui-form-item">
  <label class="layui-form-label">资料类型:</label>
  <p class="layui-input-block">
   <select name="datatypeid" id="datatypeid"></select>
  </p>
  <input type="hidden" id="yincang">
  </p>
  <p class="layui-form-item">
  <label class="layui-form-label">上传文件</label>
  <p class="layui-input-block">
   <input class="layui-input" type="file" name="file" onchange="fileChange(this);"/>
  </p>
  </p>
  <p class="layui-form-item">
  <p class="layui-input-block">
   <input type="button" class="layui-btn" value="上传"
   onclick="upload()" />
  </p>
  </p>
 </form>

js method:

<script type="text/javascript">
 var isIE = /msie/i.test(navigator.userAgent) && !window.opera;
 function fileChange(target, id) {
  var fileSize = 0;
  var filetypes = [ ".doc", ".docx" ];//这里设置接受的文件类型
  var filepath = target.value;
  var filemaxsize = 1024 * 10;//接受的文件最大10M 
  if (filepath) {
  var isnext = false;
  var fileend = filepath.substring(filepath.indexOf("."));
  if (filetypes && filetypes.length > 0) {
   for (var i = 0; i < filetypes.length; i++) {
   if (filetypes[i] == fileend) {
    isnext = true;
    break;
   }
   }
  }
  if (!isnext) {
   alert("不接受此文件类型!");
   target.value = "";
   return false;
  }
  } else {
  return false;
  }
  if (isIE && !target.files) {
  var filePath = target.value;
  var fileSystem = new ActiveXObject("Scripting.FileSystemObject");
  if (!fileSystem.FileExists(filePath)) {
   alert("附件不存在,请重新输入!");
   return false;
  }
  var file = fileSystem.GetFile(filePath);
  fileSize = file.Size;
  } else {
  fileSize = target.files[0].size;
  }
  var size = fileSize / 1024;
  if (size > filemaxsize) {
  alert("附件大小不能大于" + filemaxsize / 1024 + "M!");
  target.value = "";
  return false;
  }
  if (size <= 0) {
  alert("附件大小不能为0M!");
  target.value = "";
  return false;
  }
 }
 </script>

Related Recommended:

Python accurately determines the file type

php code sharing to determine the file type based on the file header

PHP implementation code for reading file headers to determine file type_PHP tutorial

The above is the detailed content of js method to determine file type size and give prompts. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn