Bootstrap-fileinput插件处理详情过程

fileinput插件处理详情过程:

跨域删除问题

​ 使用springBoot框架添加注解@CrossOrigin

多文件删除相关回调方法
格式如下
	}).on('xxx', function(event, id, index) {}
具体相关方法解释:
	filepreremove                 ------附件信息还未上传到服务器,附件移除回调方法
	fileremoved					  ------附件信息还未上传到服务器,移除之后的回调方法
	filebeforedelete			  ------附件从服务器删除文件之前回调方法
	filepredelete                 ------附件从服务器删除文件回调方法
	filedeleted					  ------附件从服务器删除文件之后回调方法
附件删除ajax请求配置

------该方法适用于当ajax请求时,url参数可从全局变量定义方式

具体配置在fileinput中:

ajaxDeleteSettings: {
                type: 'post',
                dataType:"json",
                async: true,
                data:{
                    fileId:fileId,
                    fileUrl:fileUrl,
                    group: group,
                    storage:storage
                },
                // url: prefix + "/deleteFile?fileId="+fileId +"&fileUrl="+fileUrl+"&group="+group+"&storage="+storage,
                url: prefix + "/deleteFile",
                beforeSend:function (xhr,settings) {
                    console.log(fileId);
                    console.log(fileUrl);
                    console.log(group);
                    console.log(storage);
                    console.log(settings.data);
                    console.log(xhr);
                    console.log(settings);
                },
            },
            mergeAjaxDeleteCallbacks: 'before' // 有了这个配置才会在请求发送之前触发ajaxDeleteSettings方法
修改fileinput.js源码,手动添加ajax请求参数
前提:
    页面增加initialPreviewConfig 参数
    定义为var initialPreviewConfig = [];
	initialPreviewConfig 中给定所需的参数 id,url等

--根据vkey值与initialPreviewConfig中key值匹配获取对应的其他参数
for (var i = 0; i < self.initialPreviewConfig.length; i++) {
                    if(vKey === self.initialPreviewConfig[i].key){
                        var vfileId = self.initialPreviewConfig[i].fileId;
                        var vfileUrl = self.initialPreviewConfig[i].fileUrl;
                        var vgroup = self.initialPreviewConfig[i].group;
                        var vstorage = self.initialPreviewConfig[i].storage;
                    }
                }

--修改settings 中data参数与后台交互
data: $.extend(true, {}, {key: vKey,fileId:vfileId,fileUrl:vfileUrl,group:vgroup,storage:vstorage}, extraData)

参数相关
// 该参数查阅资料过程中 略研究但是更多还是使用initialPreviewConfig 仅记录
var deleteExtraData = [];
文件后缀名大小写导致大写文件无法上传
        fileCompare: function(input, str, exact){
            var split = input.split("\.")[1];
            for (var i = 0; i < str.length; i++) {
                if(split == str[i]){return "verify";}else{}
            }
            return ;
            // return input !== undefined && (exact ? input === str : input.match(str));
//新增方法  并修改这个地方
chk = $h.fileCompare(caption, fileExt);
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 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、付费专栏及课程。

余额充值