【轉】Bootstrap FileInput中文API整理

来源:http://www.cnblogs.com/huijiBreathe/archive/2017/11/23/7885158.html
-Advertisement-
Play Games

Bootstrap FileInput中文API整理 這段時間做項目用到bootstrap fileinput插件上傳文件,在用的過程中,網上能查到的api都不是很全,所以想著整理一份比較詳細的文檔,方便自己今後使用,也希望能給大家帶來幫助,如有錯誤,希望大家積極指正。 一、 引入文件 <link ...


Bootstrap FileInput中文API整理

這段時間做項目用到bootstrap fileinput插件上傳文件,在用的過程中,網上能查到的api都不是很全,所以想著整理一份比較詳細的文檔,方便自己今後使用,也希望能給大家帶來幫助,如有錯誤,希望大家積極指正。

一、    引入文件

<link href="../css/bootstrap.min.css"rel="stylesheet">

<link href="../css/fileinput.css" media="all"rel="stylesheet" type="text/css" />

<scriptsrc="../js/jquery-2.0.3.min.js"></script>

<script src="../js/fileinput.js"type="text/javascript"></script>

<script src="../js/bootstrap.min.js"type="text/javascript"></script>

二、    初始化設置:

$("#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: "<iclass='glyphicon glyphicon-king'></i>",

               msgFilesTooMany: "選擇上傳的文件數量({n}) 超過允許的最大數值{m}!",

           }).on("fileuploaded", function (event, data, previewId, index){

                 

});

三、    Options 說明:

屬性名

屬性類型

描述說明

預設值

language

String                       

多語言設置,使用時需提前引入\locales文件夾下對應的語言文件,中文zh,引入語言文件必須放在fileinput.js之後

'en'

showCaption

Boolean

是否顯示被選文件的簡介

true

showBrowse

Boolean

是否顯示瀏覽按鈕

true

showPreview

Boolean

是否顯示預覽區域

true

showRemove

Boolean

是否顯示移除按鈕

true,

showUpload

Boolean

是否顯示上傳按鈕

true,

showCancel

Boolean

是否顯示取消按鈕

true,

showClose:

Boolean

是否顯示關閉按鈕

true

showUploadedThumbs

Boolean

 

true

browseOnZoneClick

Boolean

 

false

autoReplace

Boolean

是否自動替換當前圖片,設置為true時,再次選擇文件, 會將當前的文件替換掉。

false

generateFileId

Object

 

null

previewClass

String

添加預覽按鈕的類屬性

‘’

captionClass

String

 

‘’

frameClass

String

 

'krajee-default'

mainClass

String

 

'file-caption-main'

mainTemplate

Object

 

null

purifyHtml

Boolean

 

true

fileSizeGetter

Object

 

null

initialCaption

String

 

''

initialPreview

Array/Object

 

[]

initialPreviewDelimiter

String

 

'*$$*'

initialPreviewAsData

Boolean

 

false

initialPreviewFileType

String

 

'image'

initialPreviewConfig

Array/Object

 

[]

initialPreviewThumbTags

Array/Object

 

[]

previewThumbTags

Object

 

{}

initialPreviewShowDelete

Boolean

 

true

removeFromPreviewOnError

Boolean

 

false

deleteUrl

String

刪除圖片時的請求路徑

''

deleteExtraData

Object

刪除圖片時額外傳入的參數

{}

overwriteInitial

Boolean

 

true

previewZoomButtonIcons

Object

 

{

prev: '<i class="glyphicon glyphicon-triangle-left"></i>',

  next: '<i class="glyphicon glyphicon-triangle-right"></i>',

  toggleheader: '<i class="glyphicon glyphicon-resize-vertical"></i>',

  fullscreen: '<i class="glyphicon glyphicon-fullscreen"></i>',

  borderless: '<i class="glyphicon glyphicon-resize-full"></i>',

  close: '<i class="glyphicon glyphicon-remove"></i>'

},

previewZoomButtonClasses

Object

 

{

  prev: 'btn btn-navigate',

  next: 'btn btn-navigate',

  toggleheader: 'btn btn-default btn-header-toggle',

  fullscreen: 'btn btn-default',

  borderless: 'btn btn-default',

  close: 'btn btn-default'

},

preferIconicPreview

Boolrean

 

false

preferIconicZoomPreview

Boolrean

 

false

allowedPreviewTypes

undefined

 

undefined

allowedPreviewMimeTypes

Object

 

null

allowedFileTypes

Object

接收的文件尾碼,如['jpg', 'gif', 'png'],不填將不限制上傳文件尾碼類型

null

allowedFileExtensions

Object

 

null

defaultPreviewContent

Object

 

null

customLayoutTags

Object

 

{}

customPreviewTags

Object

 

{}

previewFileIcon

String

 

'<i class="glyphicon glyphicon-file"></i>'

previewFileIconClass

String

 

'file-other-icon'

previewFileIconSettings

Object

 

{}

previewFileExtSettings

Object

 

{}

buttonLabelClass

String

 

'hidden-xs'

browseIcon

String

 

'<i class="glyphicon glyphicon-folder-open"></i>&nbsp;'

browseClass

String

 

'btn btn-primary'

removeIcon

String

 

'<i class="glyphicon glyphicon-trash"></i>'

removeClass

String

 

'btn btn-default'

cancelIcon

String

 

'<i class="glyphicon glyphicon-ban-circle"></i>'

cancelClass

String

 

'btn btn-default'

uploadIcon

String

 

'<i class="glyphicon glyphicon-upload"></i>'

uploadClass

String

 

'btn btn-default'

uploadUrl

String

上傳文件路徑

null

uploadAsync

boolean

是否為非同步上傳

true

uploadExtraData

 

上傳文件時額外傳遞的參數設置

{}

zoomModalHeight

number

 

480

minImageWidth

String

圖片的最小寬度

null

minImageHeight

String

圖片的最小高度

null

maxImageWidth

String

圖片的最大寬度

null

maxImageHeight

String

圖片的最大高度

null

resizeImage

boolean

 

false

resizePreference

String

 

'width'

resizeQuality

number

 

0.92

resizeDefaultImageType

String

 

'image/jpeg'

minFileSize

number

單位為kb,上傳文件的最小大小值

0

maxFileSize

number

單位為kb,如果為0表示不限制文件大小

0

resizeDefaultImageType

number

 

25600(25MB)

minFileCount

number

表示同時最小上傳的文件個數

0

maxFileCount

number

表示允許同時上傳的最大文件個數

0

validateInitialCount

boolean

 

false

msgValidationErrorClass

String

 

'text-danger'

msgValidationErrorIcon

String

 

'<i class="glyphicon glyphicon-exclamation-sign"></i> '

msgErrorClass

String

 

'file-error-message'

progressThumbClass

String

 

"progress-bar progress-bar-success progress-bar-striped active"

rogressClass

String

 

"progress-bar progress-bar-success progress-bar-striped active"

progressCompleteClass

String

 

"progress-bar progress-bar-success"

progressErrorClass

String

 

"progress-bar progress-bar-danger"

progressUploadThreshold

number

 

99

previewFileType

String

預覽文件類型,內置['image', 'html', 'text', 'video', 'audio', 'flash', 'object',‘other‘]等格式

'image'

elCaptionContainer

String

 

null

elCaptionText

String

設置標題欄提示信息

null

elPreviewContainer

String

 

null

elPreviewImage

String

 

null

elPreviewStatus

String

 

null

elErrorContainer

String

 

null

errorCloseButton

String

 

'<span class="close kv-error-close">&times;</span>'

slugCallback

String

 

null

dropZoneEnabled

boolean

是否顯示拖拽區域

true

dropZoneTitleClass

String

拖拽區域類屬性設置

'file-drop-zone-title'

fileActionSettings

Object

設置預覽圖片的顯示樣式

{

    showRemove: true,

    showUpload: false,

    showZoom: true,

    showDrag: true,

    removeIcon: '<i class="glyphicon glyphicon-trash text-danger"></i>',

    removeClass: 'btn btn-xs btn-default',

    removeTitle: 'Remove file',

    uploadIcon: '<i class="glyphicon glyphicon-upload text-info"></i>',

    uploadClass: 'btn btn-xs btn-default',

    uploadTitle: 'Upload file',

    zoomIcon: '<i class="glyphicon glyphicon-zoom-in"></i>',

    zoomClass: 'btn btn-xs btn-default',

    zoomTitle: 'View Details',

    dragIcon: '<i class="glyphicon glyphicon-menu-hamburger"></i>',

    dragClass: 'text-info',

    dragTitle: 'Move / Rearrange',

    dragSettings: {},

    indicatorNew: '<i class="glyphicon glyphicon-hand-down text-warning"></i>',

    indicatorSuccess: '<i class="glyphicon glyphicon-ok-sign text-success"></i>',

    indicatorError: '<i class="glyphicon glyphicon-exclamation-sign text-danger"></i>',

    indicatorLoading: '<i class="glyphicon glyphicon-hand-up text-muted"></i>',

    indicatorNewTitle: 'Not uploaded yet',

    indicatorSuccessTitle: 'Uploaded',

    indicatorErrorTitle: 'Upload Error',

    indicatorLoadingTitle: 'Uploading ...'

}

otherActionButtons

String

 

''

textEncoding

String

編碼設置

'UTF-8'

ajaxSettings

Object

 

{}

ajaxDeleteSettings

Object

 

{}

showAjaxErrorDetails

boolean

 

true

四、    提示說明設置:

屬性名

預設值

中文

fileSingle

file

文件

filePlural

files

個文件

browseLabel

Browse &hellip

選擇 &hellip;

removeLabel

Remove

移除

removeTitle

Clear selected files

清除選中文件

cancelLabel

Cancel

取消

cancelTitle

Abort ongoing upload

取消進行中的上傳

uploadLabel

Upload

上傳

uploadTitle

Upload selected files

上傳選中文件

msgNo

No

沒有

msgNoFilesSelected

No files selected

“”

msgCancelled

Cancelled

取消

msgZoomModalHeading

Detailed Preview

詳細預覽

msgSizeTooSmall

File "{name}" (<b>{size} KB</b>) is too small and must be larger than <b>{minSize} KB</b>.

File "{name}" (<b>{size} KB</b>) is too small and must be larger than <b>{minSize} KB</b>.

msgSizeTooLarge

File "{name}" (<b>{size} KB</b>) exceeds maximum allowed upload size of <b>{maxSize} KB</b>.

文件 "{name}" (<b>{size} KB</b>) 超過了允許大小 <b>{maxSize} KB</b>.

msgFilesTooLess

You must select at least <b>{n}</b> {files} to upload.

你必須選擇最少 <b>{n}</b> {files} 來上傳.

msgFilesTooMany

Number of files selected for upload <b>({n})</b> exceeds maximum allowed limit of <b>{m}</b>.

選擇的上傳文件個數 <b>({n})</b> 超出最大文件的限制個數 <b>{m}</b>.

msgFileNotFound

File "{name}" not found!

文件 "{name}" 未找到!

msgFileSecured

Security restrictions prevent reading the file "{name}".

安全限制,為了防止讀取文件 "{name}".

msgFileNotReadable

File "{name}" is not readable.

文件 "{name}" 不可讀.

msgFilePreviewAborted

File preview aborted for "{name}".

取消 "{name}" 的預覽.

msgFilePreviewError

An error occurred while reading the file "{name}".

讀取 "{name}" 時出現了一個錯誤.

msgInvalidFileName

Invalid or unsupported characters in file name "{name}".

Invalid or unsupported characters in file name "{name}".

msgInvalidFileType

Invalid type for file "{name}". Only "{types}" files are supported.

不正確的類型 "{name}". 只支持 "{types}" 類型的文件.

msgInvalidFileExtension

Invalid extension for file "{name}". Only "{extensions}" files are supported.

不正確的文件擴展名 "{name}". 只支持 "{extensions}" 的文件擴展名.

msgFileTypes

{

            'image': 'image',

            'html': 'HTML',

            'text': 'text',

            'video': 'video',

            'audio': 'audio',

            'flash': 'flash',

            'pdf': 'PDF',

            'object': 'object'

        },

{

            'image': 'image',

            'html': 'HTML',

            'text': 'text',

            'video': 'video',

            'audio': 'audio',

            'flash': 'flash',

            'pdf': 'PDF',

            'object': 'object'

        },

msgUploadAborted

The file upload was aborted

該文件上傳被中止

msgUploadThreshold

Processing...

Processing...

msgUploadBegin

Initializing...

Initializing...

msgUploadEnd

Done

Done

msgUploadEmpty

No valid data available for upload.

No valid data available for upload.

msgValidationError

Validation Error

驗證錯誤

msgLoading

Loading file {index} of {files} &hellip;

載入第 {index} 文件 共 {files} &hellip;

msgProgress

Loading file {index} of {files} - {name} - {percent}% completed.

載入第 {index} 文件 共 {files} - {name} - {percent}% 完成.

msgSelected

{n} {files} selected

{n} {files} 選中

msgFoldersNotAllowed

Drag & drop files only! {n} folder(s) dropped were skipped.

只支持拖拽文件! 跳過 {n} 拖拽的文件夾.

msgImageWidthSmall

Width of image file "{name}" must be at least {size} px.

寬度的圖像文件的"{name}"的必須是至少{size}像素.

msgImageHeightSmall

Height of image file "{name}" must be at least {size} px.

圖像文件的"{name}"的高度必須至少為{size}像素.

msgImageWidthLarge

Width of image file "{name}" cannot exceed {size} px.

寬度的圖像文件"{name}"不能超過{size}像素.

msgImageHeightLarge

Height of image file "{name}" cannot exceed {size} px.

圖像文件"{name}"的高度不能超過{size}像素.

msgImageResizeError

Could not get the image dimensions to resize.

無法獲取的圖像尺寸調整。

msgImageResizeException

Error while resizing the image.<pre>{errors}</pre>

錯誤而調整圖像大小。<pre>{errors}</pre>

msgAjaxError

Something went wrong with the {operation} operation. Please try again later!

Something went wrong with the {operation} operation. Please try again later!

msgAjaxProgressError

{operation} failed

{operation} failed

ajaxOperations

{

            deleteThumb: 'file delete',

            uploadThumb: 'file upload',

            uploadBatch: 'batch file upload',

            uploadExtra: 'form data upload'

        },

{

            deleteThumb: 'file delete',

            uploadThumb: 'file upload',

            uploadBatch: 'batch file upload',

            uploadExtra: 'form data upload'

        },

dropZoneTitle

Drag & drop files here &hellip;

拖拽文件到這裡 &hellip;<br>支持多文件同時上傳

dropZoneClickTitle

<br>(or click to select {files})

<br>(或點擊{files}按鈕選擇文件)

previewZoomButtonTitles

{

            prev: 'View previous file',

            next: 'View next file',

            toggleheader: 'Toggle header',

            fullscreen: 'Toggle full screen',

            borderless: 'Toggle borderless mode',

            close: 'Close detailed preview'

        }

{

            prev: '預覽上一個文件',

            next: '預覽下一個文件',

            toggleheader: '縮放',

            fullscreen: '全屏',

            borderless: '無邊界模式',

            close: '關閉當前預覽'

        }

fileActionSettings

 

{     removeTitle: '刪除文件',

            uploadTitle: '上傳文件',

            zoomTitle: '查看詳情',

            dragTitle: '移動 / 重置',

            indicatorNewTitle: '沒有上傳',

            indicatorSuccessTitle: '上傳',

            indicatorErrorTitle: '上傳錯誤',

            indicatorLoadingTitle: '上傳 ...'

        },

 

五、    Method說明:

方法名

參數

描述

fileerror

 

非同步上傳錯誤結果處理

$('#uploadfile').on('fileerror', function(event, data, msg) {

   

});

fileuploaded

 

非同步上傳成功結果處理

$("#uploadfile").on("fileuploaded", function (event, data, previewId, index) {

  

})

filebatchuploaderror

 

同步上傳錯誤結果處理

$('#uploadfile').on('filebatchuploaderror', function(event, data, msg) {

     

});

filebatchuploadsuccess

 

同步上傳成功結果處理

$('#uploadfile').on('filepreupload', function(event, data, previewId, index) {

       

});

filebatchselected

 

選擇文件後處理事件

$("#fileinput").on("filebatchselected", function(event, files) {

});

upload

 

文件上傳方法

$("#fileinput").fileinput("upload");

fileuploaded

 

上傳成功後處理方法

$("#fileinput").on("fileuploaded", function(event, data, previewId, index) {

});

filereset

 

 

fileclear

 

點擊瀏覽框右上角X 清空文件前響應事件

$("#fileinput").on("fileclear",function(event, data, msg){

});

filecleared

 

點擊瀏覽框右上角X 清空文件後響應事件

$("#fileinput").on("filecleared",function(event, data, msg){

});

fileimageuploaded

 

在預覽框中圖片已經完全載入完畢後回調的事件

 

六、    常見錯誤:

 (1)   當點擊上傳後,報錯,提示你必須選擇最少X個文件上傳。

錯誤原因:html中input標簽元素屬性:data-min-file-count="2" 設置為X個文件,限制上傳文件數。

本文非原創,轉載自http://blog.csdn.net/u012526194/article/details/69937741


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 拖放的事件:dragstart、drag、dragend、dragenter、dragover、dragleave、drop 拖放操作初始化的對象DataTransfer ...
  • 一、概述 1、安裝node,去node官網 2、新建一個項目,通過npm init命令初始化,即創建一個package.json文件 3、用命令 npm install vue -g 全局安裝vue 二、vue測試工具(vue-devtool)的安裝 1、下載安裝 2、如果安裝後,在瀏覽器中不能打開 ...
  • 最近碰到一個這樣的現象,後臺返回的數據中,數組裡面有一些有變數值,有一些沒有變數值。 舉個例子,比如後臺返回的例子是這樣的: 很明顯第二條數據少了activeUser這個變數值,那麼在渲染數據的時候就有有一點問題。 接下來是判斷這個變數是不是在數組中 用的是indexOf方法(數組中有多個相同變數的 ...
  • --web客戶端JavaScript <!-- 調用方式 --> <body onload="checkCookie()"></body> function getYourIP() { const RTCPeerConnection = window.RTCPeerConnection || win ...
  • JSONP技術 JSONP是解決跨域問題的一種常見方式 跨域問題,因為瀏覽器有同源策略,所以當不同域間進行數據交互的時候就會出現跨域問題 同源策略:只有在同協議、同功能變數名稱、同埠的情況下才能進去數據交互 JSONP的原理:可以利用script標簽(會使用回調函數來接收數據)的src屬性不受同源策略的影 ...
  • 繼承是一種節省記憶體,復用代碼,使代碼組織更高效的編程思想。在本篇文章中,我將詳細解釋JavaScript中繼承的實現方式,相信通過閱讀本篇文章,你將徹底掌握JavaScript繼承技術,希望你能在工作中找準時機,發揮這一技術的價值。 ...
  • 在學習廖雪峰前輩的JavaScript教程中,遇到了一些需要註意的點,因此作為學習筆記列出來,提醒自己註意! 如果大家有需要,歡迎訪問前輩的博客https://www.liaoxuefeng.com/學習。 在一個對象中綁定函數,我們稱這個函數是這個對象的方法。 在前面的學習中,對象的定義如下: 如 ...
  • 什麼是動作呢?顧名思義它是管理運行環境中所有動作的中樞,通俗點講就是動畫。它也是總個框架核心組件之一,它提供動作的創建、刪除、插入,以及提供對關鍵幀與過渡的諸多操作 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...