基于Bootstrap 3可预览的HTML5文件上传插件

Bootstrap FileInput实现高效图片上传功能 Bootstrap FileInput 是一个基于Bootstrap框架的文件上传组件,它扩展了标准的HTML文件输入控件,提供了更为丰富的用户界面和功能。此组件利用JavaScript(通常是jQuery库)来动态创建和管理文件上传的过程,使得用户能够享受更加现代化和交互式的文件上传体验。在现代Web应用中,用户上传文件是一个常见需求。它不仅需要一个美观且用户友好的界面,还应该提供足够的信息反馈,比如上传进度,以便用户了解当前状态。 阅读详情

bootstrap-fileinput是一款基于Bootstrap 3.x的HTML5文件上传插件。该文件上传插件带有预览图效果,可同时选择多个文件。该插件使用bootstrap CSS3样式来制作文件上传界面,美观大方。并且它提供了多国语言,你可以选择使用中文。

在这里插入图片描述
在线预览 下载

该文件上传插件比普通的文件上传插件功能更强大,它可以对图片、文本文件、HTML文件、视频文件、音频文件、flash文件生成预览图。另外,它还可以基于AJAX上传文件,拖拽上传文件,查看上传进度,可以选择性的预览,添加或删除文件。

bootstrap文件上传插件界面

该文件上传插件的特点有:

  • AJAX上传功能基于HTML5 FormData(绝大多数现代浏览器都支持该属性)。在不支持该属性的浏览器中会回退为普通的文件上传组件。使用AJAX必须设置uploadUrl属性。
  • 允许你添加、移除和追加文件。添加的文件可以生成预览图。
  • 可以将文件拖拽到指定区域来上传文件。
  • 可以一个个的删除或更新文件,也可以同时完成这些操作。
  • 如果showPreview属性设置为false,或者浏览器不支持uploadUrl属性,将会回退为普通的文件上传组件。
  • 可以配置文件上传等待指示,文件上传成功信息,文件上传出错信息。
  • 在使用ajax上传文件时可以添加额外的表单信息。
  • 可以显示文件当前上传的进度。
  • 可以取消和终止当前正在上传的任务。
  • 文件上传完毕会自动刷新预览区域的内容。

插件外部依赖需求

  • Bootstrap 3.x

  • 最新版本的jQuery

  • 大多数现代浏览器都支持HTML5(inputs和FileReader
    AP),CSS3和jQuery。对于IE浏览器,必须是IE10以上的版本。IE9及以下的版本会回退为普通的文件上传组件,并且不支持选择多个文件和HTML
    5 FileReader API。

  • AJAX上传需要浏览器支持HTML5 FormData和XHR2 (XMLHttpRequest 2)。大多数现代浏览器都支持FormData和XHR2。在不支持这些特性的浏览器中将会回退为普通的文件上传组件。

安装

可以使用bower来安装该文件上传插件。

bower install bootstrap-fileinput            

使用方法

使用该文件上传插件首先要引入需要的外部依赖文件和fileinput.min.js及fileinput.min.css文件。

<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="stylesheet">
<link href="path/to/css/fileinput.min.css" media="all" rel="stylesheet" type="text/css" />
<script src="jquery/2.1.1/jquery.min.js"></script>
<script src="path/to/js/fileinput.min.js"></script>
<!-- bootstrap.js below is only needed if you wish to the feature of viewing details
     of text file preview via modal dialog -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js" type="text/javascript"></script>
<!-- optionally if you need translation for your language then include 
    locale file as mentioned below -->
<script src="path/to/js/fileinput_locale_<lang>.js"></script>     

如果你需要使用语言国际化功能,可以添加上fileinput_locale_lang.js文件,中文对应的是fileinput_locale_zh.js文件。

初始化插件

// initialize with defaults
$("#input-id").fileinput();
 
// with plugin options
$("#input-id").fileinput({'showUpload':false, 'previewFileType':'any'});                
#input-id是文件上传input元素的ID标识符(例如:type = file)。

你也可以直接通过HTML5 data属性来初始化插件。

<input id="input-id" type="file" class="file" data-preview-file-type="text" >    

配置参数

  • showCaption:是否显示文件的标题。默认值true。

  • showPreview:是否显示文件的预览图。默认值true。

  • showRemove:是否显示删除/清空按钮。默认值true。

  • showUpload:是否显示文件上传按钮。默认是submit按钮,除非指定了uploadUrl属性。默认值true。

  • showCancel:是否显示取消文件上传按钮。只有在AJAX上传线程中该属性才可见可用。默认值true。

  • captionClass:在标题容器上额外的class。类型string。

  • previewClass:在预览区域容器上的额外的class。类型string。

  • mainClass:添加在文件上传主容器。类型string。

  • initialDelimiter:在initialPreview属性中用于上传多个文件时的分隔符。默认值:‘$$’。

  • initialPreview:类型string或array。显示的初始化预览内容。你可以传入一个简单的HTML标签用于显示图片、文本或文件。如果设置一个字符串,会在初始化预览图中显示一个文件。你可以在initialDelimiter属性中设置分隔符用于显示多个预览图。如果设置为数组,初始化预览图中会显示数组中所有的文件。
    下面的CSS样式用于显示各种不同类型的文件预览图:

    • mage files:CSS样式为file-preview-image
    • text files:CSS样式为file-preview-text
    • other files:CSS样式为file-preview-other
// for image files
initialPreview: [
    "<img src='/images/desert.jpg' class='file-preview-image' alt='Desert' title='Desert'>",
    "<img src='/images/jellyfish.jpg' class='file-preview-image' alt='Jelly Fish' title='Jelly Fish'>",
],
 
// for text files
initialPreview: "<div class='file-preview-text' title='NOTES.txt'>" +
    "This is the sample text file content upto wrapTextLength of 250 characters" +
    "<span class='wrap-indicator' onclick='$(\"#show-detailed-text\").modal(\"show\")' title='NOTES.txt'>[…]</span>" +
    "</div>"
 
// for other files    
initialPreview: "<div class='file-preview-text'>" + 
    "<h2><i class='glyphicon glyphicon-file'></i></h2>" +
    "Filename.xlsx" + "</div>"
  • initialPreviewCount:类型int。被添加到选择的文件的初始化预览图的数量。当overwriteInitial属性设置为false时,该参数可以显示正确的文件标题。

  • initialPreviewDelimiter:类型string。用于分割初始化预览图内容的分割符。只有在initialPreview属性传入的参数是字符串而不是数组时可用。默认值是:$$。

  • initialPreviewConfig:类型:array。每一个initialPreview项的配置属性。数组中的每一个元素都应该是下面关键字组成的对象或关联数组:

- `caption`: _string_, the caption or filename to display for each initial preview item content.
- `width`: _string_, the CSS width of the image/content displayed.
- `url`: _string_, the URL for deleting the image/content in the initial preview via AJAX post response. This will default to `deleteUrl` if not set.
- `key`: _string|object_, the key that will be passed as data to the `url` via AJAX POST.
- `extra`: _object|function_, the extra data that will be passed as data to the initial preview delete url/AJAX server call via POST. This will default to `deleteExtraData` if not set.

下面是配置initialPreviewConfig属性的一个例子。

// setup initial preview with data keys 
initialPreview: [
    "<img src='/images/desert.jpg' class='file-preview-image' alt='Desert' title='Desert'>",
    "<img src='/images/jellyfish.jpg' class='file-preview-image' alt='Jelly Fish' title='Jelly Fish'>",
],
// initial preview configuration
initialPreviewConfig: [
    {
        caption: 'desert.jpg', 
        width: '120px', 
        url: '/localhost/avatar/delete', 
        key: 100, 
        extra: {id: 100}
    },
    {
        caption: 'jellyfish.jpg', 
        width: '120px', 
        url: '/localhost/avatar/delete', 
        key: 101, 
        extra: function() { 
            return {id: $("#id").val()};
        },
    }
] 

注意:ajax delete操作会通过POST向服务器发送下面的数据:

key:在initialPreviewConfig[‘key’]中设置的key值。
通过initialPreviewConfig[‘extra’]或deleteExtraData格式传入的其它作为key:
value键值对数据。

  • initialPreviewShowDelete:是否为每一个由initialPreview插件的预览图创建一个删除按钮。
  • previewThumbTags:类型array。预览图的一组标签。它会在预览图生成之后动态的替换掉缩略图标签。例如:
// change thumbnail footer template
layoutTemplates.footer = '<div class="file-thumbnail-footer">\n' +
'    <div class="file-caption-name">{caption}</div>\n' +
'    {CUSTOM_TAG_NEW}\n' +
'    {CUSTOM_TAG_INIT}\n' +
'    {actions}\n' +
'</div>';
 
// set preview template tags
previewThumbTags = {
    '{CUSTOM_TAG_NEW}': '<span class="custom-css">CUSTOM MARKUP</span>',
    '{CUSTOM_TAG_INIT}': ' '
};  
基于bootstrap.3的文件上传效果, 可拖拽上传、预览的HTML5文件上传插件.zip html5开发 立即下载

相关推荐

从谱峰搜索到多项式求根:Root-MUSIC算法原理与MATLAB实践

本文深入解析Root-MUSIC算法在阵列信号处理中的原理与应用,通过多项式求根替代传统MUSIC算法的谱峰搜索,显著提升计算效率和精度。文章详细介绍了算法核心思想、MATLAB实现步骤及工程优化技巧,帮助读者掌握这一高效的DOA估计方法。

weixin_30832143的博客 80

bootstrap 插件fileinput 文件上传 前台及后台

1、在页面中引入需要的js和css样式,引入的路径根据你得具体项目路径,我的是放在fileinput目录下。 <!-- 引入bootsreap上传插件fileinput相关 --> <link rel="stylesheet" type="text/css" href="${ctxStatic}/fileinput/fileinput.min.css"> <script src="${ctxStatic}/fileinput/fileinput.min.js"&

qq_41060647的博客 2224

界面上下固定_基于ANSYS的胶粘结构界面开裂有限元计算

引言:目前工程上主要有螺栓,过盈,焊接和胶粘四种常用的连接方式,本文基于ANSYS Workbench环境,引入内聚力模型来实现对胶粘结构界面开裂失效的计算,文中的界面失效参数为随意给定,不是工程实际测试数据,仅起到演示作用!1.问题的描述如图所示给出了胶粘结构的三维模型,该胶粘结构由上下钢板组成,中间通过胶粘接到一起。(胶不需要建模,其影响主要通过内聚力模型实现)上下板的材料为结构钢,...

weixin_29473667的博客 1万+

基于Metronic的Bootstrap开发框架经验总结(5)--Bootstrap文件上传插件File Input的使用...

Bootstrap文件上传插件File Input是一个不错的文件上传控件,但是搜索使用到的案例不多,使用的时候,也是一步一个脚印一样摸着石头过河,这个控件在界面呈现上,叫我之前使用过的Uploadify 好看一些,功能也强大些,本文主要基于我自己的框架代码案例,介绍其中文件上传插件File Input的使用。关于Uploadify的控件介绍,可以参考我之前的随笔介绍《基于MVC4+EasyUI的...

weixin_34248705的博客 281

Keystone变换(4)MATLAB仿真

关于Keystone变换三种方法(DFT-IFFT法、Sinc插值法和Chirp-Z法)的仿真

qq_45846079的博客 1571

无感健康监测的未来:毫米波雷达如何重新定义睡眠科技与居家养老

毫米波雷达技术正重新定义无感健康监测,特别是在睡眠科技与居家养老领域。通过精准监测呼吸、心率和体动,无需穿戴设备即可实现临床级精度。结合合宙Air700E开发板,构建了完整的远程看护解决方案,为老年人提供跌倒检测、异常报警等安全保障,同时保护用户隐私。

cake8的博客 569

使用BootStrap上传控件Fileinput实现文件上传压缩包

最近公司有个需求,批量导入企业信息。 企业信息存在excel中,企业logo图片存在同级logo文件夹中,目录是这样的 (使用规范说明是给业务人员写的说明文档,下载模板时一同生成的) 这个上传注定是一个压缩包的方式 ...

cm777的博客 3257

Python全栈入门到实战【基础篇 22】生成器与迭代器:底层逻辑与实战场景

Python迭代器与生成器:惰性求值的高效实践 摘要:本文深入解析Python中迭代器和生成器的核心机制与应用场景。迭代器通过实现__iter__()和__next__()方法实现惰性求值,适合处理大数据集和无限序列。生成器作为迭代器的简化实现,通过yield关键字自动实现迭代器协议,代码更简洁。文章详细对比了可迭代对象与迭代器的区别,演示了自定义迭代器和生成器函数的实现方式,并介绍了生成器表达式这一高效替代列表推导式的方案。通过斐波那契数列等实例,展示了惰性求值在内存优化方面的优势,以及生成器在流式数据处

那些看似不起波澜的日复一日,会在某天让你看到坚持的意义 3263

Bootstrap 4自定义文件上传插件

这是一款Bootstrap 4自定义文件上传插件。该插件在原生bootstrap文件上传的基础上,添加了一些功能,例如显示单文件或多文件的文件路径等。

helloGGGG的博客 527

22、硬件工程师笔试面试——电机(2025版本)

例如,B级绝缘的电机可以承受的最高温度为130℃,而H级绝缘的电机可以承受高达180℃的温度。同时,也要考虑电机的成本和控制系统的复杂性。电机的选择取决于其应用的具体要求,包括所需的功率、速度、扭矩、效率、成本和工作环境等。根据电动机保护配置原则,为电机配置适当的保护,如过负荷保护、缺相保护、逆相保护、接地漏电保护、堵转保护、相不平衡保护、短路保护、过电压保护、低电压保护、过热保护等。根据安培环路定理,电流和磁场的相互作用会在电机的转子上产生力,这些力作用于转子上,使其绕轴旋转,从而产生转矩。

XU157303764的博客 3539

Slow waitForAckedSeqno took 64873ms (threshold=30000ms). File being written

Slow waitForAckedSeqno took 64873ms (threshold=30000ms). File being written

zhengzaifeidelushang的博客 2011

Bootstrap File Input,最好用的文件上传组件

本篇介绍如何使用bootstrap fileinput.js(最好用的文件上传组件)来进行图片的展示,上传,包括springMVC后端文件保存。

沉默王二 24万+

下采样优化实战:用ADown显著提升YOLOv11的多尺度特征保持能力

ADown 以“可编程梯度信息+多分支特征融合”打破了传统下采样的性能壁垒,为 YOLOv11 带来了多尺度特征的精准传递能力。从原理到代码集成,本教程已为你铺就了一条“小目标检测精度跃升”的实战路径。现在就动手尝试吧——当你看到模型对极小目标也能精准识别,且特征图细节完整时,你会明白这份技术探索的价值。我很乐意在你实践过程中帮你解决任何问题,让我们一起推动目标检测在下采样领域的边界。

FJN110的博客 423

html5 文件选择控件,基于Bootstrap 3可预览的HTML5文件上传插件

bootstrap-fileinput是一款基于Bootstrap 3.x的HTML5文件上传插件。该文件上传插件带有预览图效果,可同时选择多个文件。该插件使用bootstrap CSS3样式来制作文件上传界面,美观大方。并且它提供了多国语言,你可以选择使用中文。该文件上传插件比普通的文件上传插件功能更强大,它可以对图片、文本文件、HTML文件、视频文件、音频文件、flash文件生成预览图。另外,...

weixin_39793319的博客 618

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

TP5 基于Bootstrap 3可预览的HTML5文件上传插件(单文件测试成功)

view上传页面&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt; &lt;html xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;head&gt; ..

鲁花花生油 774

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

终极指南:5分钟快速上手bootstrap-fileinput,打造专业文件上传界面

想要为你的网站添加一个既美观又功能强大的文件上传组件吗?bootstrap-fileinput就是你的完美选择!这款增强的HTML5文件输入插件专门为Bootstrap 5.x/4.x/3.x设计,能够大幅提升用户体验。🎯 ## 为什么选择bootstrap-fileinput? bootstrap-fileinput不仅仅是一个简单的文件上传工具,它提供了**文件预览**、**多文件选择*

gitblog_00470的博客 757

python bootstrap-fileinput示例_bootstrap-fileinput详细说明与使用

javascript技术文章开发bootstrap-fileinput详细说明与使用 介绍bootstrap-fileinput是一款非常优秀的HTML5文件上传插件,支持文件预览、多文件上传等一系列特性。一款非常优秀的HTML5文件上传插件,支持bootstrap 3.x 和4.x版本,具有非常多的特性:多文件类型上传。这个插件能最简单的帮你完成文件上传功能,且使用boot...

weixin_39569389的博客 1024

文件上传控件

我发现一个叫做zyupload的控件和一个叫做"基于Bootstrap 3可预览的HTML5文件上传插件" 转载于:https://www.cnblogs.com/zonglonglong/p/4792098.html

weixin_30772261的博客 84

bootstrap-fileinput初体验

bootstrap-fileinput初体验 原文:http://www.htmleaf.com/html5/html5muban/201505091801.html Document & Demo: http://plugins.krajee.com/file-input/demo   bootstrap-fileinput是一款基于Bootstrap 3.x的HTM

u010486495的专栏 6998

前端bootstrap+fileInput+django后端是用ajax方式上传form表单数据及多个文件保存到数据库

前端bootstrap+fileInput+django后端是用ajax方式上传form表单数据及多个文件保存到数据库

Mr_WoLong 1487

bootstrap-fileinput 应用

bootstrap-fileinput是一款基于Bootstrap 3.x的HTML5文件上传插件。该文件上传插件带有预览图效果,可同时选择多个文件。该插件使用bootstrap CSS3样式来制作文件上传界面,美观大方。并且它提供了多国语言,你可以选择使用中文。该文件上传插件比普通的文件上传插件功能更强大,它可以对图片、文本文件、HTML文件、视频文件、音频文件、flash文件生成预览...

weixin_30889885的博客 148

BootstrapFileInput的使用记录

BootstrapFileInput  参数方法 anguage String 多语言设置,使用时需提前引入\locales文件夹下对应的语言文件,中文zh,引入语言文件必须放在fileinput.js之后 'en' showCaption Boolean 是否显示被选文件的

weixin_40391928的博客 1076

如何使用 Bootstrap Fileinput 实现高级文件上传功能:2024完整指南

Bootstrap Fileinput 是一款强大的 HTML5 文件输入增强插件,专为 Bootstrap 5.x、4.x 和 3.x 设计,提供文件预览、多文件选择、分块上传等实用功能。本文将详细介绍这款免费工具的核心优势、安装步骤和基础使用方法,帮助新手快速上手实现专业级文件上传体验。 ## 🚀 为什么选择 Bootstrap Fileinput? 这款开源插件通过简洁的 API 和丰

gitblog_00524的博客 466
上一篇: jQuery可定制的弹出订阅注册模态窗口插件
下一篇: jquery支持移动端的滚动视觉差特效插件
�时过境迁,物是人非
博客等级 码龄8年 181粉丝 45原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值