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 相关文章推荐
用Javascript同时提交多个Web表单的方法
Dec 26 Javascript
js对象之JS入门之Array对象操作小结
Jan 09 Javascript
在JavaScript中监听IME键盘输入事件
May 29 Javascript
Js参数值中含有单引号或双引号问题的解决方法
Nov 06 Javascript
代码获取历史上的今天发生的事
Apr 11 Javascript
javascript轻量级库createjs使用Easel实现拖拽效果
Feb 19 Javascript
盘点javascript 正则表达式中 中括号的【坑】
Mar 16 Javascript
jQuery学习笔记——jqGrid的使用记录(实现分页、搜索功能)
Nov 09 Javascript
写一个移动端惯性滑动&amp;回弹Vue导航栏组件 ly-tab
Mar 06 Javascript
vue实现与安卓、IOS交互的方法
Nov 02 Javascript
JS实现的碰撞检测与周期移动完整示例
Sep 02 Javascript
解决antd datepicker 获取时间默认少8个小时的问题
Oct 29 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
PHP实现使用优酷土豆视频地址获取swf播放器分享地址
2014/06/05 PHP
Symfony2获取web目录绝对路径、相对路径、网址的方法
2016/11/14 PHP
PHP实现统计所有字符在字符串中出现次数的方法
2017/10/17 PHP
PHP实现会员账号单唯一登录的方法分析
2019/03/07 PHP
js 获取中文拼音,Select自动匹配字母获取值的代码
2009/09/23 Javascript
由点击页面其它地方隐藏div所想到的jQuery的delegate
2013/08/29 Javascript
nodeType属性返回被选节点的节点类型介绍
2013/11/22 Javascript
javascript if条件判断方法小结
2014/05/17 Javascript
Javascript中封装window.open解决不兼容问题
2014/09/28 Javascript
jQuery性能优化技巧分析
2015/02/20 Javascript
javascript实现仿腾讯游戏选择
2015/05/14 Javascript
jquery带动画效果幻灯片特效代码
2015/08/27 Javascript
跟我学习javascript的函数调用和构造函数调用
2015/11/16 Javascript
js清除浏览器缓存的几种方法
2017/03/15 Javascript
js 用于检测类数组对象的函数方法
2017/05/02 Javascript
微信小程序获取用户openId的实现方法
2017/05/23 Javascript
详谈javascript精度问题与调整
2017/07/08 Javascript
node.js中grunt和gulp的区别详解
2017/07/17 Javascript
AngularJS实现自定义指令及指令配置项的方法
2017/11/20 Javascript
react 兄弟组件如何调用对方的方法示例
2018/10/23 Javascript
eslint 的三大通用规则详解
2019/05/16 Javascript
vue+element项目中过滤输入框特殊字符小结
2019/08/07 Javascript
js实现搜索提示框效果
2020/09/05 Javascript
python使用cookie库操保存cookie详解
2014/03/03 Python
用Python实现BP神经网络(附代码)
2019/07/10 Python
python自动化实现登录获取图片验证码功能
2019/11/20 Python
python读写文件write和flush的实现方式
2020/02/21 Python
python中pandas库中DataFrame对行和列的操作使用方法示例
2020/06/14 Python
荷兰鞋子在线:Nelson Schoenen
2017/12/25 全球购物
警察先进个人事迹材料
2014/05/16 职场文书
奉献家乡演讲稿
2014/09/13 职场文书
十八大宣传标语
2014/10/09 职场文书
招商引资工作汇报
2014/10/28 职场文书
周年庆典答谢词
2015/01/20 职场文书
2015年人力资源部工作总结
2015/04/30 职场文书
2016年秋季运动会通讯稿
2015/11/25 职场文书