fileinput组件实战总结

fileinput是一个增强的基于Bootstrap3.x和HTML5的文件上传工具,具备多种格式文件的预览功能,

另外,它包含了基于AJAX的上传,拖拽和撤销文件,可以显示上传文件的进度,并且可以任意去预览,

添加,删除文件。

在本系统使用的功能

机构或银行图标的预览功能

使用fileinput

如果要使用fileinput组件,需要引入相应的css和js文件

  • 引入css文件
 <link rel="stylesheet" href="/genius/static/plugins/fileInput/fileinput.css">
  • 引入js文件
<script src="/genius/static/plugins/fileInput/fileinput.js"></script>
<script src="/genius/static/plugins/fileInput/zh.js"></script>//汉化文件
  • html初始化

将input输入框的type设置为file,同时设定一个id。

<div class="col-sm-8">
<input type="file" id="input-2" class="form-control" placeholder="" name="license">
</div>
  • js初始化简介
 $('#input-2').fileinput({
fileinputLocales: 'zh', //设置语言
allowedFileExtensions : ['jpg', 'png','gif','jpeg'],//接收的文件后缀
showUpload: false, //是否显示上传按钮
removeLabel: '移除',
showCaption: false, //是否显示标题
showRemove:false, //是否显示移除按钮
showClose:false, //是否显示关闭按钮
showPreview:true, //是否显示预览功能
maxFileSize: 4096, //设置最大的上传字节
browseClass: "btn btn-primary", //按钮样式
enctype: 'multipart/form-data',
previewFileIcon: "<i class='glyphicon glyphicon-king'></i>",
fileSingle: '文件',
filePlural: '个文件',
browseLabel: '选择 &hellip;',
removeLabel: '移除',
removeTitle: '清除选中文件',
overwriteInitial: true,
autoReplace :true,
initialPreview: [
'http://'+dataImgUrl+'?r='+Math.random(),
],
previewSettings:{
width:"100%",
},
initialPreviewAsData: true, // identify if you are sending preview data only and not the raw markup
initialPreviewFileType: 'image', // image is the default and can be overridden in config below
initialPreviewConfig: [
{ width: "100%",},
], });

使用过程中所遇到的问题

  • form表单的编码类型

    因为使用了input[type=file],一定要注意form表单要声明编码类型为enctype="multipart/form-data"。

  • 当input的class中有file时会导致初始化错误

    如果将使用了fileinput初始化的input输入框的class设置为file的话,fileinput对于该输入框的设置无效。

  • 当在页面中打开多个fileinput初始化后的input时,存在fileinput输入框的缓存问题。在项目机构管理处应用时,

    在机构列表中点击每一个机构都可以查看此机构的详情-当然包括营业执照和签署协议的详情。当我们点击了机构1的详情,

    fileinput初始化了模态框中的图片预览。当我们关闭机构1的详情,再去打开机构2的详情框时,显示的预览图片还是

    机构1的,这时对于input的二次初始化就不起作用了。这时的解决方法是手动操作dom,手动设置image的src属性。

    代码如下:

$('.file-preview-image').each(function (){
this.src= 'http://'+dataImgUrl+'?t='+new Date().getTime();
});

fileInput实战总结的更多相关文章

  1. Python两步实现关联规则Apriori算法,参考机器学习实战,包括频繁项集的构建以及关联规则的挖掘

    .caret, .dropup > .btn > .caret { border-top-color: #000 !important; } .label { border: 1px so ...

  2. JS文件上传神器bootstrap fileinput详解

    Bootstrap FileInput插件功能如此强大,完全没有理由不去使用,但是国内很少能找到本插件完整的使用方法,于是本人去其官网翻译了一下英文说明文档放在这里供英文不好的同学勉强查阅.另外附上一 ...

  3. Scikit-Learn实战KNN

    Scikit-Learn总结 Scikit-Learn(基于Python的工具包) 1.是一个基于Numpy,Scipy,Matplotlib的开源机器学习工具包. 2.该包于2007年发起,基本功能 ...

  4. bootstrap+fileinput插件实现可预览上传照片功能

    实际项目中运用: 功能:实现上传图片,更改上传图片,移除图片的功能 <!DOCTYPE html> <html> <head> <meta charset=& ...

  5. 第14.16节 爬虫实战2:赠人玫瑰,手留余香! request+BeautifulSoup实现csdn博文自动点赞

    写在前面:本文仅供参考学习,请勿用作它途,禁止转载! 在<第14.14节 爬虫实战准备:csdn博文点赞过程http请求和响应信息分析>老猿分析了csdn博文点赞处理的http请求和响应报 ...

  6. 第14.15节 爬虫实战1:使用Python和selenium实现csdn博文点赞

    写在前面:本文仅供参考学习,请勿用作它途,禁止转载! 在开始学爬虫时,学习了csdn博客专家(id:明天依旧可好 | 柯尊柏)<实战项目二:实现CSDN自动点赞>的文章,文章介绍了通过Py ...

  7. fileinput 的总结

    fileinput组件实战总结 fileinput是一个增强的基于Bootstrap3.x和HTML5的文件上传工具,具备多种格式文件的预览功能, 另外,它包含了基于AJAX的上传,拖拽和撤销文件,可 ...

  8. SSH实战 · 唯唯乐购项目(上)

    前台需求分析 一:用户模块 注册 前台JS校验 使用AJAX完成对用户名(邮箱)的异步校验 后台Struts2校验 验证码 发送激活邮件 将用户信息存入到数据库 激活 点击激活邮件中的链接完成激活 根 ...

  9. GitHub实战系列汇总篇

    基础: 1.GitHub实战系列~1.环境部署+创建第一个文件 2015-12-9 http://www.cnblogs.com/dunitian/p/5034624.html 2.GitHub实战系 ...

随机推荐

  1. Octave Tutorial(《Machine Learning》)之第四课《绘图数据》

    第四课 Plotting Data 绘图数据 t = [0,0.01,0.98]; y1 = sin(2*pi*4*t); y2 = cos(2*pi*4*t); plot(t,y1);(绘制图1) ...

  2. 【2017-03-20】HTML基础知识、文字标记、图片标记、空格换行、表格、表格嵌套及布局、超链接

    一.HTML基础知识 HTML: 网站(站点) - 网页 网站是由一个或者多个网页组合起来的 HTML作为文件后缀名,可以把文件变为网页 HTML是一门编程语言的名字:超文本标记语言 超越了文字的范畴 ...

  3. JS Math.round()方法原理

    请先测试代码: <!doctype html> <html lang="en"> <head> <meta charset="U ...

  4. 受限玻尔兹曼机(RBM)原理总结

    在前面我们讲到了深度学习的两类神经网络模型的原理,第一类是前向的神经网络,即DNN和CNN.第二类是有反馈的神经网络,即RNN和LSTM.今天我们就总结下深度学习里的第三类神经网络模型:玻尔兹曼机.主 ...

  5. iPhone与iWatch连接、控制、数据传递(Swift)

    最近在做一个项目,涉及到iPhone设备和手表传输数据.控制彼此界面跳转,在网上找了很多资料,发现国内的网站这方面介绍的不多,而国外的网站写的也不是很全,所以在这写这篇博客,给大家参考一下,望大神指点 ...

  6. Unity利用Sapi进行windows语音开发

    软件中的语音技术主要包含两种:语音识别speech recognition和语音合成speech synthesis.一般地,开发者会因为技术实力和资金实力等各方面的问题无力完成专业的语音引擎,因此通 ...

  7. 老李推荐:第2章1节《MonkeyRunner源码剖析》了解你的测试对象: NotePad应用简介

    老李推荐:第2章1节<MonkeyRunner源码剖析>了解你的测试对象: NotePad应用简介   本书脚本相关的示例常会用到Android SDK自带的NotePad这个应用,所以这 ...

  8. ngrok把本地主机映射到公网域名

    这两天又要搞微信项目,然后我下载了一个QQ浏览器,搜索微信调试工具,我再搜,再搜,搜不出来,问了下客服,暂时下架了,好吧! 我上网搜了一下,就找到了  ngrok 这个东西,它也可以把你本地主机映射到 ...

  9. net.sz.framework 框架 登录服务器架构 单服2 万 TPS(QPS)

    前言 无论我们做什么系统,95%的系统都离不开注册,登录: 而游戏更加关键,频繁登录,并发登录,导量登录:如果登录承载不起来,那么游戏做的再好,都是徒然,进不去啊: 序言 登录所需要的承载,包含程序和 ...

  10. 对InvokeRequired的理解

    if (listBox1.InvokeRequired)                            //当有新工作进程访问控件时InvokeRequired为True            ...