加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 如何验证文件上传的文件类型?

发布时间:2020-12-15 19:37:59 所属栏目:asp.Net 来源:网络整理
导读:我使用 input type =“file”id =“fileUpload”runat =“server”在ASP.NET应用程序中上传文件。我想限制上传的文件类型(例如:limit为.xls或.xlsx文件扩展名)。 JavaScript或服务器端验证都可以(只要服务器端验证将在文件上传之前发生 – 可能会上传一些非
我使用< input type =“file”id =“fileUpload”runat =“server”>在ASP.NET应用程序中上传文件。我想限制上传的文件类型(例如:limit为.xls或.xlsx文件扩展名)。

JavaScript或服务器端验证都可以(只要服务器端验证将在文件上传之前发生 – 可能会上传一些非常大的文件,因此任何验证都需要在上传实际文件之前进行) 。

解决方法

似乎您将有有限的选项,因为您希望检查发生在上传前。我认为你最好得到的是使用javascript来验证文件的扩展名。您可以构建有效扩展的哈希,然后查看要上传的文件的扩展是否存在于哈希中。

HTML:

<input type="file" name="FILENAME"  size="20" onchange="check_extension(this.value,"upload");"/>
<input type="submit" id="upload" name="upload" value="Attach" disabled="disabled" />

Javascript:

var hash = {
  'xls'  : 1,'xlsx' : 1,};

function check_extension(filename,submitId) {
      var re = /..+$/;
      var ext = filename.match(re);
      var submitEl = document.getElementById(submitId);
      if (hash[ext]) {
        submitEl.disabled = false;
        return true;
      } else {
        alert("Invalid filename,please select another file");
        submitEl.disabled = true;

        return false;
      }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读