IE下使用bootstrap-fileinput清空文件框并设置可用时文件框格式错误

在项目中使用的是bootstrap-fileinput,如下图:




下方是选择文件并上传,上方放文件的展示。上传之后要清空下方的文件框并设置可用,代码如下:

//清空上传文件框并设置可用
$("#file-case").fileinput('refresh').fileinput('enable');


用这种方法在chrome中可用,展示也是正常的,截图如下:



但是在IE下,上传成功之后同样的设置代码,展示出来的页面效果却不对:



下方的文件框并没有显示全。检查之后发现正常的文件框的div应该是这样的:


但是错误展示的是这样的:


也就是说在IE下文件框的内容并没有展示出来。


本来是想在业务页面中在上传成功之后判断ie并单独设置中间这段代码,但是没有成功。

于是在源码的fileinput.js中查找,搜索enable,可以找到这个函数:

enable: function () {
            var self = this;
            self.isDisabled = false;
            self._raise('fileenabled');
            self.$element.removeAttr('disabled');
            self.$container.find(".kv-fileinput-caption").removeClass("file-caption-disabled");
            self.$container.find(
                ".btn-file, .fileinput-remove, .fileinput-upload, .file-preview-frame button").removeAttr("disabled");
            self._initDragDrop();
            return self.$element;
        },
就是把上传框置为可用。

尝试把判断添加的代码放进去:

enable: function () {
            var self = this;
            self.isDisabled = false;
            self._raise('fileenabled');
            self.$element.removeAttr('disabled');
            self.$container.find(".kv-fileinput-caption").removeClass("file-caption-disabled");
            self.$container.find(
                ".btn-file, .fileinput-remove, .fileinput-upload, .file-preview-frame button").removeAttr("disabled");
            self._initDragDrop();
            
            //判断如果是IE,修改文件框,否则这段div会丢失,文件预览框格式不对。
            if(!!window.ActiveXObject || "ActiveXObject" in window){	
    			$(".file-drop-zone").prepend('<div class="file-drop-zone-title">拖拽文件到这里 …<br>支持多文件同时上传</div>');
    		}
            return self.$element;
        },

添加之后在IE中正常。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
bootstrap-fileinput是一种基于Bootstrap框架的文件上传插件,它提供了简单易用的界面和丰富的功能。 首先,bootstrap-fileinput具有美观的样式,与Bootstrap的整体风格相匹配。它使用了一系列晰、直观的图标和按钮,让用户可以方便地浏览、选择和上传文件。 其次,bootstrap-fileinput还支持多种文件展示方式。它可以以列表或网格的形式显示文件预览,在列表模式下可以显示文件的名称、大小、类型等信息,而在网格模式下则可以直观地展示文件的缩略图。这种多样化的展示方式可以让用户根据自己的需求选择最适合的视觉效果。 此外,bootstrap-fileinput还具有丰富的功能。它支持文件的多选和拖拽上传,可以通过设置参数来限制文件的大小、类型和数量等。它还提供了预览、删除和重新选择文件的功能,让用户可以在上传之前查看文件的内容和理不需要的文件。此外,它还可以通过AJAX异步上传文件,实现无刷新上传的效果。 最后,bootstrap-fileinput还提供了一些额外的扩展功能。例如,它可以通过设置参数来自定义上传按钮的样式和文本,可以根据不同的需求注册和调用一系列的回调函数,以便实现更加灵活的操作。 总之,bootstrap-fileinput是一个功能强大、界面美观的文件上传插件,它可以为用户提供便捷的文件管理和上传体验。不仅仅可以用于网站开发,也可以用在各种基于Bootstrap框架的Web应用中。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值