BootStrap Fileinput的使用教程


Posted in Javascript onDecember 30, 2016

bootstrap-fileinput是基于bootstrap的上传控件,此控件网上有很多例子。我照着例子做后发现请求无法提交到后台,反复测试后发现,不能禁止预览(showPreview要设置为true),禁止预览后fileuploaded则无法响应(实际情况是showPreview=false时, 即便是uploadAsync=true, 也是filebatchuploadsuccess响应返回结果。如果showPreview=true, uploadAsync=true, 才是fileuploaded响应返回结果)。

注意:

如果出现$("#xxxx").fileinput({}); 不生效的情况请将fileinput.js中最后几行注释掉:

/* $(document).ready(function () {
    var $input = $('input.file[type=file]'), count = $input.attr('type') ? $input.length : 0;
    if (count > 0) {
      $input.fileinput();
    }
  }); */
<link rel="stylesheet" href="css/bootstrapCSS/bootstrap.min.css">
<link rel="stylesheet" href="css/bootstrapCSS/bootstrap-theme.min.css">
<link rel="stylesheet" href="css/bootstrapCSS/fileinput.css" />
<div>
<input type="file" name="uploadfile" id="uploadfile" multiple class="file-loading" />
</div>
<script type="text/JavaScript" src="js/jQuery.min.js"></script>
<script type="text/javascript" src="js/bootstrap/fileinput.js"></script>
<script type="text/javascript" src="js/bootstrap/fileinput_locale_zh.js"></script>
<script type="text/javascript" src="js/bootstrap/bootstrap.min.js"></script>
<script type="text/javascript">
$("#uploadfile").fileinput({
        language: 'zh', //设置语言
        uploadUrl: "http://127.0.0.1/testDemo/fileupload/upload.do", //上传的地址
        allowedFileExtensions: ['jpg', 'gif', 'png'],//接收的文件后缀
        //uploadExtraData:{"id": 1, "fileName":'123.mp3'},
        uploadAsync: true, //默认异步上传
        showUpload: true, //是否显示上传按钮
        showRemove : true, //显示移除按钮
        showPreview : true, //是否显示预览
        showCaption: false,//是否显示标题
        browseClass: "btn btn-primary", //按钮样式   
        dropZoneEnabled: false,//是否显示拖拽区域
        //minImageWidth: 50, //图片的最小宽度
        //minImageHeight: 50,//图片的最小高度
        //maxImageWidth: 1000,//图片的最大宽度
        //maxImageHeight: 1000,//图片的最大高度
        //maxFileSize: 0,//单位为kb,如果为0表示不限制文件大小
        //minFileCount: 0,
        maxFileCount: 10, //表示允许同时上传的最大文件个数
        enctype: 'multipart/form-data',
        validateInitialCount:true,
        previewFileIcon: "<i class='glyphicon glyphicon-king'></i>",
        msgFilesTooMany: "选择上传的文件数量({n}) 超过允许的最大数值{m}!",
      });
//异步上传返回结果处理
$('#uploadfile').on('fileerror', function(event, data, msg) {
      console.log(data.id);
      console.log(data.index);
      console.log(data.file);
      console.log(data.reader);
      console.log(data.files);
      // get message
      alert(msg);
});
//异步上传返回结果处理
$("#uploadfile").on("fileuploaded", function (event, data, previewId, index) {
        console.log(data.id);
        console.log(data.index);
        console.log(data.file);
        console.log(data.reader);
        console.log(data.files);
        var obj = data.response;
        alert(JSON.stringify(data.success));
      });
//同步上传错误处理
    $('#uploadfile').on('filebatchuploaderror', function(event, data, msg) {
      console.log(data.id);
      console.log(data.index);
      console.log(data.file);
      console.log(data.reader);
      console.log(data.files);
      // get message
      alert(msg);
     });
  //同步上传返回结果处理
  $("#uploadfile").on("filebatchuploadsuccess", function (event, data, previewId, index) {
      console.log(data.id);
        console.log(data.index);
        console.log(data.file);
        console.log(data.reader);
        console.log(data.files);
        var obj = data.response;
        alert(JSON.stringify(data.success));
   });
//上传前
$('#uploadfile').on('filepreupload', function(event, data, previewId, index) {
    var form = data.form, files = data.files, extra = data.extra,
      response = data.response, reader = data.reader;
    console.log('File pre upload triggered');
  });
</script>

经查资料得知,异步上传处理错误和返回结果要处理fileerrorfileuploaded方法;同步上传处理错误和返回结果filebatchuploaderrorfilebatchuploadsuccess方法

以上所述是小编给大家介绍的BootStrap Fileinput的使用教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
风吟的小型JavaScirpt库 (FY.JS).
Mar 09 Javascript
jquery 结合C#后台的数组对文章的关键字自动添加链接的代码
Jul 15 Javascript
iframe异步加载实现点击左边菜单加载右边内容实例讲解
Mar 04 Javascript
分析Node.js connect ECONNREFUSED错误
Apr 09 Javascript
JS定时器实例详细分析
Oct 11 Javascript
jquery实现html页面 div 假分页有原理有代码
Sep 06 Javascript
基于jQuery实现以手风琴方式展开和折叠导航菜单
Jan 28 Javascript
详解从angular-cli:1.0.0-beta.28.3升级到@angular/cli:1.0.0
May 22 Javascript
基于Bootstrap实现城市三级联动
Nov 23 Javascript
Vue Element 分组+多选+可搜索Select选择器实现示例
Jul 23 Javascript
Javascript实现简易天数计算器
May 18 Javascript
vue 导出文件,携带请求头token操作
Sep 10 Javascript
BootStrap Fileinput初始化时的一些参数
Dec 30 #Javascript
bootstrapValidator表单验证插件学习
Dec 30 #Javascript
JS实现类似百叶窗下拉菜单效果
Dec 30 #Javascript
BootStrap实现轮播图效果(收藏)
Dec 30 #Javascript
jQuery Ajax 实现在html页面实时显示用户登录状态
Dec 30 #Javascript
javascript实现简单的可随机变色网页计算器示例
Dec 30 #Javascript
ionic2 tabs使用 Modal底部tab弹出框
Dec 30 #Javascript
You might like
PHP APC的安装与使用详解
2013/06/13 PHP
PHP中array_slice函数用法实例详解
2014/11/25 PHP
php实现将任意进制数转换成10进制的方法
2015/04/17 PHP
解决PHP里大量数据循环时内存耗尽的方法
2015/10/10 PHP
php实现算术验证码功能
2018/12/05 PHP
PDO::getAttribute讲解
2019/01/28 PHP
JavaScript CSS修改学习第三章 修改样式表
2010/02/19 Javascript
基于jquery点击自以外任意处,关闭自身的代码
2012/02/10 Javascript
js hover 定时器(实例代码)
2013/11/12 Javascript
运行Node.js的IIS扩展iisnode安装配置笔记
2015/03/02 Javascript
如何实现json数据可视化详解
2016/11/24 Javascript
轻松理解vue的双向数据绑定问题
2017/10/30 Javascript
基于Vue实现可以拖拽的树形表格实例详解
2018/10/18 Javascript
localstorage实现带过期时间的缓存功能
2019/06/28 Javascript
Vue项目中如何使用Axios封装http请求详解
2019/10/23 Javascript
Vue中jsx不完全应用指南小结
2019/11/01 Javascript
介绍Python中内置的itertools模块
2015/04/29 Python
Python多进程分块读取超大文件的方法
2016/04/13 Python
Flask框架的学习指南之开发环境搭建
2016/11/20 Python
python中subprocess批量执行linux命令
2018/04/27 Python
python3+PyQt5 自定义窗口部件--使用窗口部件样式表的方法
2019/06/26 Python
python try except返回异常的信息字符串代码实例
2019/08/15 Python
Python序列化与反序列化pickle用法实例
2019/11/11 Python
Pytorch中Tensor与各种图像格式的相互转化详解
2019/12/26 Python
中国领先的汽车保养服务平台:途虎养车
2019/10/18 全球购物
Envie de Fraise意大利:法国网上推出的孕妇装品牌
2020/10/18 全球购物
园艺师求职信
2014/04/27 职场文书
公司承诺书格式
2014/05/21 职场文书
校园文化标语
2014/06/18 职场文书
贸易经济专业自荐书
2014/06/29 职场文书
汽车机电维修工求职信
2014/09/30 职场文书
2014年超市工作总结
2014/11/19 职场文书
聚众斗殴罪辩护词
2015/05/21 职场文书
MySQL Innodb关键特性之插入缓冲(insert buffer)
2021/04/08 MySQL
基于Redis延迟队列的实现代码
2021/05/13 Redis
一文搞懂python异常处理、模块与包
2021/06/26 Python