bootstrap fileinput 插件使用项目总结(经验)


Posted in Javascript onFebruary 22, 2017

基础的定义及使用方法网上有很多不再概述,这儿主要写本人所使用项目时碰到的一些问题及解决方案

注:本人使用此插件主要用来上传图片之用,插件其他上传文件没有涉及

一、上传最小数量问题 

通过查阅其他资料可知配置中有两个方法

minFileCount:4,//表示允许同时上传的最小文件个数 
maxFileCount: 10, //表示允许同时上传的最大文件个数 

这两个方法都可在插件官网的api里查到,不过有个问题

minFileCount在使用其自带上传方法时才会出现提示 

bootstrap fileinput 插件使用项目总结(经验)

maxFileCount在选择文件超过上限时就会出现提示

bootstrap fileinput 插件使用项目总结(经验)

showUpload: true,//是否显示上传按钮 

具体原因可能是作者还没有修改吧,或许以后的版本会解决这个问题

二、不使用插件自带上传使用form表单提交问题

本人所做项目没有使用插件自带的上传功能而直接使用form表单进行提交

bootstrap fileinput 插件使用项目总结(经验)

bootstrap fileinput 插件使用项目总结(经验)bootstrap fileinput 插件使用项目总结(经验)bootstrap fileinput 插件使用项目总结(经验)

如果是表单提交需要注意以下问题

1.form里必须添加enctype="multipart/form-data"

2.如果是单个图片后台不用接收数组形式,或者可以参考如下方法

bootstrap fileinput 插件使用项目总结(经验)

for (MultipartFile imgreturn : file) { 
/*不添加如下代码会将新添加的内容覆盖掉*/ 
actinfo = new HashMap<String,Object>(); 
if (!imgreturn.isEmpty()) { 
upImg =FileUtil.upload(imgreturn); 
} 
}

来接收前台传过来的数据,以上部分代码有删改,保存文件的方法就不予展示了

三、页面接收传递数据使用插件接收问题 

此插件是可以进行后台数据传递预览功能的,不过添加新数据后会出现覆盖掉预览数据问题,所以不建议使用本插件进行数据修改操作

预览后台相关代码

// 预览图片json数据组  
  var preList = new Array();  
     for ( var i = 0; i < reData.length; i++) {  
       var img = null; 
       img = reData[i].activityimg; 
        // 图片类型  
        preList[i]= "<img width='120px' src=\'"+img+"\' class=\"file-preview-image\">";  
     }  
     var previewJson = preList;   
    // 与上面 预览图片json数据组 对应的config数据  
  var preConfigList = new Array();  
     for ( var i = 0; i < reData.length; i++) {  
      var array_element = reData[i];  
      var tjson = { 
        caption: reData[i].activityno, // 展示的文件名  
        url:'imgdelete', // 删除url  
            key: reData[i].activityno, // 删除是Ajax向后台传递的参数  
            width: '120px',   
            };  
      preConfigList[i] = tjson;  
     }  
    $('#txt_fileup').fileinput({  
   language: 'zh', //设置语言 
       uploadUrl: 'activityupdate',  
       uploadAsync:false,  
       allowedFileExtensions: ['jpg', 'gif', 'png','jpeg'],//接收的文件后缀 
       showCaption: true,  
       showUpload: false,//是否显示上传按钮  
       showRemove: false,//是否显示删除按钮  
       showCaption: true,//是否显示输入框  
       showPreview:true, 
       showCancel:true,  
       dropZoneEnabled: false, 
       minFileCount:4, 
       maxFileCount: 10,  
       initialPreviewShowDelete:true,  
       msgFilesTooMany: "选择上传的文件数量 超过允许的最大数值!",  
       /* initialPreview: previewJson,  
       initialPreviewConfig: preConfigList */  
     }).off('filepreupload').on('filepreupload', function() {  
     }).on("fileuploaded", function(event, outData) {  
     });

四、使用到的插件方法调用

为了解决上一个问题层考虑使用调用插件的方法来进行判断,不贵最后失败了,以下是使用过的调用方法

$('#txt_fileup').on('filedeleted', function(event, key) {  
/* 触发删除方法 */ 
});  
 $('#txt_fileup').on('fileselect', function(event, key) { 
 /* 触发选择方法 */ 
  });

以上所述是小编给大家介绍的bootstrap fileinput 插件使用项目总结(经验),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JavaScript中几种常见排序算法小结
Feb 22 Javascript
JS 加入收藏夹的代码(主流浏览器通用)
May 13 Javascript
基于zepto的移动端轻量级日期插件--date_picker
Mar 04 Javascript
angular 用拦截器统一处理http请求和响应的方法
Jun 08 Javascript
js案例之鼠标跟随jquery版(实例讲解)
Jul 21 jQuery
vue通过路由实现页面刷新的方法
Jan 25 Javascript
解决Vue.js 2.0 有时双向绑定img src属性失败的问题
Mar 14 Javascript
微信小程序MUI导航栏透明渐变功能示例(通过改变opacity实现)
Jan 24 Javascript
vue插槽slot的理解和使用方法
Apr 03 Javascript
layui layer select 选择被遮挡的解决方法
Sep 21 Javascript
如何在vue项目中嵌入jsp页面的方法(2种)
Feb 06 Javascript
前端实现滑动按钮AJAX与后端交互的示例代码
Feb 24 Javascript
javascript 网页进度条简单实例
Feb 22 #Javascript
详解闭包解决jQuery中AJAX的外部变量问题
Feb 22 #Javascript
js实现PC端根据IP定位当前城市地理位置
Feb 22 #Javascript
纯JS实现轮播图
Feb 22 #Javascript
javascript 操作cookies详解及实例
Feb 22 #Javascript
jquery实现手机端单店铺购物车结算删除功能
Feb 22 #Javascript
js实现简易垂直滚动条
Feb 22 #Javascript
You might like
PHP两种去掉数组重复值的方法比较
2014/06/19 PHP
php 在字符串指定位置插入新字符的简单实现
2016/06/28 PHP
一个用js实现控制台控件的代码
2007/09/04 Javascript
js checkbox(复选框) 使用集锦
2009/04/28 Javascript
Jquery实现显示和隐藏的4种简单方式
2013/08/28 Javascript
jquery简单实现鼠标经过导航条改变背景图
2013/12/17 Javascript
7个有用的jQuery代码片段分享
2015/05/19 Javascript
jQuery中 prop() attr()使用详解
2015/05/19 Javascript
JavaScript中eval函数的问题
2016/01/31 Javascript
js表单元素checked、radio被选中的几种方法(详解)
2016/08/22 Javascript
Vue自定义指令使用方法详解
2017/08/21 Javascript
通过 JS 判断页面是否有滚动条的实现方法
2018/04/05 Javascript
npm全局模块卸载及默认安装目录修改方法
2018/05/15 Javascript
nodejs高大上的部署方式(PM2)
2018/09/11 NodeJs
详解vue-cli项目开发/生产环境代理实现跨域请求
2019/07/23 Javascript
layui点击弹框页面 表单请求的方法
2019/09/21 Javascript
JavaScript提升机制Hoisting详解
2019/10/23 Javascript
[50:45]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs TNC 第一场
2018/04/10 DOTA
Python写的Discuz7.2版faq.php注入漏洞工具
2014/08/06 Python
python概率计算器实例分析
2015/03/25 Python
python 出现SyntaxError: non-keyword arg after keyword arg错误解决办法
2017/02/14 Python
使用python3构建文件传输的方法
2019/02/13 Python
对Pytorch中nn.ModuleList 和 nn.Sequential详解
2019/08/18 Python
Python如何优雅删除字符列表空字符及None元素
2020/06/25 Python
印度尼西亚综合购物网站:Lazada印尼
2016/09/07 全球购物
YesStyle美国/全球:购买亚洲时装、美容化妆品和生活百货
2017/01/16 全球购物
举例说明类变量和实例变量的区别
2016/06/30 面试题
大学生村官典型材料
2014/01/12 职场文书
大型晚会策划方案
2014/02/06 职场文书
意向书范文
2014/03/31 职场文书
3分钟英语演讲稿
2014/04/29 职场文书
个人合伙协议书范本
2014/10/14 职场文书
2016应届毕业生就业指导课心得体会
2016/01/15 职场文书
2019生态环境保护倡议书!
2019/07/03 职场文书
Nginx使用X-Accel-Redirect实现静态文件下载的统计、鉴权、防盗链、限速等
2021/04/04 Servers
win10忘记pin密码登录不了怎么办?win10忘记pin密码登不进去的解决方法
2022/07/07 数码科技