bootstrap fileinput实现文件上传功能


Posted in Javascript onAugust 23, 2017

bootstrap 的上传文件控件号称最好用的,总之我用着到是挺别扭的。

首先这个控件很简单。

html代码

<form>
<input type="file" name="txt_file" id="txt_file" multiple class="file-loading" />
</form>

可能需要保存按钮等等,这可以另外添加,指定事件方法就行,当然,需要在html中引入bootstrap的相关css和js

fileinput.jsfileinput.css

在你自己的js中,也就是保存按钮等的事件方法中需要写一段关键代码

$('#txt_file').fileinput('upload');

这就是上传的代码。

除了以上这些,还需要一段重要的代码,这个初始化上传控件用的,也就是设置一些必要的参数

function initFileInput(ctrlName, uploadUrl) {
  var control = $('#' + ctrlName);
  control.fileinput({
   language: 'zh', //设置语言
   uploadUrl: uploadUrl, //上传的地址
   allowedFileExtensions : ['txt', 'doc','docx'],//接收的文件后缀
   showUpload: false, //是否显示上传按钮
   showCaption: false,//是否显示标题
   enctype: 'multipart/form-data',
   browseClass: "btn btn-primary", //按钮样式    
   previewFileIcon: "<i class='glyphicon glyphicon-king'></i>",
   uploadExtraData: function() { //额外参数的关键点
     return data;
    }
   }).on("fileuploaded", function (event, data, previewId, index) {
    fileResponseData.push(data.response.Attach);
   });
 }
 
 //-----入口方法-----
 $(function() {
  initFileInput("txt_file", "/updateFile.do");
 });

设置这些后,bootstrap就可以自动上传文件,具体上传的规则,是由项目的controller控制的。

关于回调函数,就是 on("dileuploaded",func......),这是附件上传成功后就会调用一次,也有刚选择附件时的回调函数,关键字是filebatchselected

关键说一下bootstrap的上传机制,它支持多文件上传,是多线程来上传文件,一个附件传一次,因此上传成功后的回调函数是会调用多次的。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
可以文本显示的公告栏的js代码
Mar 11 Javascript
JavaScript 三种创建对象的方法
Oct 16 Javascript
基于jquery的lazy loader插件实现图片的延迟加载[简单使用]
May 07 Javascript
jquery zTree异步加载简单实例分享
Feb 05 Javascript
js实现可拖动DIV的方法
Dec 17 Javascript
jQuery实现平滑滚动页面到指定锚点链接的方法
Jul 15 Javascript
JavaScript隐式类型转换
Mar 15 Javascript
JavaScript比较当前时间是否在指定时间段内的方法
Aug 02 Javascript
javascript判断元素存在和判断元素存在于实时的dom中的方法
Jan 17 Javascript
Nuxt.js 数据双向绑定的实现
Feb 17 Javascript
vue3.0 搭建项目总结(详细步骤)
May 20 Javascript
JS求1到任意数之间的所有质数的方法详解
May 20 Javascript
jQuery Position方法使用和兼容性
Aug 23 #jQuery
详解EasyUi控件中的Datagrid
Aug 23 #Javascript
Vue0.1的过滤代码如何添加到Vue2.0直接使用
Aug 23 #Javascript
Bootstrap table使用方法记录
Aug 23 #Javascript
JS实现浏览上传文件的代码
Aug 23 #Javascript
基于jQuery实现的单行公告活动轮播效果
Aug 23 #jQuery
JS轮播图实现简单代码
Feb 19 #Javascript
You might like
很温暖很温暖的Lester Young
2021/03/03 冲泡冲煮
php操作MongoDB基础教程(连接、新增、修改、删除、查询)
2014/03/25 PHP
PHP递归遍历指定文件夹内的文件实现方法
2016/11/15 PHP
PHP设计模式之抽象工厂模式实例分析
2019/03/25 PHP
Laravel 修改默认日志文件名称和位置的例子
2019/10/17 PHP
JavaScript的类型简单说明
2010/09/03 Javascript
由Javascript实现的页面日历
2011/11/04 Javascript
jQuery动态添加、删除元素的方法
2014/01/09 Javascript
JS实现根据当前文字选择返回被选中的文字
2014/05/21 Javascript
nodejs开发环境配置与使用
2014/11/17 NodeJs
JS网页在线获取鼠标坐标值的方法
2015/02/28 Javascript
Nodejs学习笔记之入门篇
2015/04/16 NodeJs
使用DNode实现php和nodejs之间通信的简单实例
2015/07/06 NodeJs
jquery自定义插件——window的实现【示例代码】
2016/05/06 Javascript
深入理解JS addLoadEvent函数
2016/05/20 Javascript
微信小程序 swiper组件轮播图详解及实例
2016/11/16 Javascript
JavaScript中Array对象用法实例总结
2016/11/29 Javascript
vue2.0.js的多级联动选择器实现方法
2018/02/09 Javascript
vue+vuex+axios实现登录、注册页权限拦截
2018/03/09 Javascript
纯js封装的ajax功能函数与用法示例
2018/05/14 Javascript
npm 更改默认全局路径以及国内镜像的方法
2018/05/16 Javascript
纯JS实现可用于页码更换的飞页特效示例
2018/05/21 Javascript
vue filter 完美时间日期格式的代码
2019/08/14 Javascript
javascript-hashchange事件和历史状态管理实例分析
2020/04/18 Javascript
Java中重定向输出流实现用文件记录程序日志
2015/06/12 Python
Python中常见的异常总结
2018/02/20 Python
在python中pandas读文件,有中文字符的方法
2018/12/12 Python
Python适配器模式代码实现解析
2019/08/02 Python
Python检查图片是否损坏及图片类型是否正确过程详解
2019/09/30 Python
CSS3实现的闪烁跳跃进度条示例(附源码)
2013/08/19 HTML / CSS
巴西美妆购物网站:Kutiz Beauté
2019/03/13 全球购物
RIP版本1跟版本2的区别
2013/12/30 面试题
精细化工应届生求职信
2013/11/17 职场文书
化学工程专业求职信
2014/08/10 职场文书
python 破解加密zip文件的密码
2021/04/22 Python
教你做个可爱的css滑动导航条
2021/06/15 HTML / CSS