input type=file 限制上传文件的格式

最近一个项目,要求用户上传文件时必须为docx 文件,不支持txt 及上传图片,下面贴出代码,希望大家需要时直接拿去取用,写的不好或者不对的地方希望大家指出来

html 部分:

                                <input type='text' name='textfield' id='textfield' class='txt' placeholder="选择文件" />
                                <input type="file" name="fileField" class="file" id="fileField" size="28" onchange="document.getElementById('textfield').value=this.value" />
                                <input type='hidden' id='docUrl'  />
                            </div>
                        </div>

此处的οnchange=“document.getElementById(‘textfield’).value=this.value” 是为了显示用户上传文件后显示文件的地址效果如下图
在这里插入图片描述此处显示用户上传的文件所在的地址
js 代码部分
$("#fileField").change(function () {
var file = this.files[0];
arr.push(file);
if (file.size > 10 * 1024 * 1024) { //限制上传文件的 大小,此处为10M
alert(“你选择的文件太大了!”);
return false;
}
var type=this.value.toLowerCase().split(’.’).splice(-1); //获取上传的文件的后缀名
if (type[0]!=“docx”&&type[0]!=“doc”) { //只能上传doc,docx 格式的文件
layer.msg(“文件必须为word文档!”, {icon: 2});;
document.getElementById(‘textfield’).value=’’; //如上传的文件格式不符合要求,文件显示部分不显示
return false;
}

    var reader = new FileReader();
    //读取文件过程方法
    reader.onerror = function (e) {
        console.log("文件读取异常....");
        alert('文件上传异常请关闭重试....');
    };
    reader.onabort = function (e) {
        console.log("文件读取异常....");
        alert('文件上传异常请关闭重试....');
    };
    reader.onload = function (e) {
        $("#docUrl").val(e.target.result);
    };
    reader.readAsDataURL(file);
});
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值