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 相关文章推荐
JavaScript高级程序设计(第3版)学习笔记2 js基础语法
Oct 11 Javascript
限制textbox或textarea输入字符长度的JS代码
Oct 16 Javascript
使用jquery实现以post打开新窗口
Mar 19 Javascript
JavaScript异步回调的Promise模式封装实例
Jun 07 Javascript
javascript常见数据验证插件大全
Aug 03 Javascript
JS组件Bootstrap实现下拉菜单效果代码
Apr 26 Javascript
JS正则表达式修饰符中multiline(/m)用法分析
Dec 27 Javascript
利用node.js如何创建子进程详解
Dec 09 Javascript
vue中的 $slot 获取插槽的节点实例
Nov 12 Javascript
js利用拖放实现添加删除
Aug 27 Javascript
vue-cli3配置favicon.ico和title的流程
Oct 27 Javascript
JS轻量级函数式编程实现XDM三
Jun 16 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 json_encode奇怪问题说明
2011/09/27 PHP
phpize的深入理解
2013/06/03 PHP
thinkPHP统计排行与分页显示功能示例
2016/12/02 PHP
Thinkphp5框架异常处理操作实例分析
2020/06/03 PHP
JS效率个人经验谈(8-15更新),加入range技巧
2007/01/09 Javascript
5秒后跳转到另一个页面的js代码
2013/10/12 Javascript
各种常用的JS函数整理
2013/10/25 Javascript
jQuery读取和设定KindEditor值的方法
2013/11/22 Javascript
引用外部脚本时script标签关闭的写法
2014/01/20 Javascript
jQuery回调函数的定义及用法实例
2014/12/23 Javascript
Javascript 拖拽雏形中的一些问题(逐行分析代码,让你轻松了拖拽的原理)
2015/01/23 Javascript
javaScript实现滚动新闻的方法
2015/07/30 Javascript
jQuery Validate初步体验(一)
2015/12/12 Javascript
JavaScript简单实现弹出拖拽窗口(一)
2016/06/17 Javascript
使用纯JS代码判断字符串中有多少汉字的实现方法(超简单实用)
2016/11/12 Javascript
JS匹配日期和时间的正则表达式示例
2017/05/12 Javascript
解决vue-cli脚手架打包后vendor文件过大的问题
2018/09/27 Javascript
在Python的Django框架中更新数据库数据的方法
2015/07/17 Python
浅谈Python中的可变对象和不可变对象
2017/07/07 Python
python实现发送邮件功能代码
2017/12/14 Python
详解Python核心对象类型字符串
2018/02/11 Python
opencv python统计及绘制直方图的方法
2019/01/21 Python
python使用if语句实现一个猜拳游戏详解
2019/08/27 Python
超实用的 30 段 Python 案例
2019/10/10 Python
Pytorch中.new()的作用详解
2020/02/18 Python
windows、linux下打包Python3程序详细方法
2020/03/17 Python
TensorFlow2.1.0最新版本安装详细教程
2020/04/08 Python
Python实现上下文管理器的方法
2020/08/07 Python
杭州信雅达系统.NET工程师面试试题
2015/02/08 面试题
空气环保标语
2014/06/12 职场文书
优秀毕业生找工作自荐信
2014/06/23 职场文书
离婚协议书范本(2014版)
2014/09/28 职场文书
2014年招商工作总结
2014/11/22 职场文书
《7的乘法口诀》教学反思
2016/02/18 职场文书
MySQL系列之一 MariaDB-server安装
2021/07/02 MySQL
mysql的单列多值存储实例详解
2022/04/05 MySQL