天天看點

基于Metronic的Bootstrap開發架構經驗總結(5)--Bootstrap檔案上傳插件File Input的使用

這是一個增強的 HTML5 檔案輸入控件,是一個 Bootstrap 3.x 的擴充,實作檔案上傳預覽,多檔案上傳等功能。

一般情況下,我們需要引入下面兩個檔案,插件才能正常使用:

bootstrap-fileinput/css/fileinput.min.css

bootstrap-fileinput/js/fileinput.min.js

簡單的界面效果如下所示,和衆多上傳檔案控件一樣,可以接受各種類型的檔案。當然,我們也可以指定具體接受的檔案類型等功能。

基于Metronic的Bootstrap開發架構經驗總結(5)--Bootstrap檔案上傳插件File Input的使用

如果需要考慮中文化,那麼還需要引入檔案:

bootstrap-fileinput/js/fileinput_locale_zh.js

這樣基于MVC的Bundles集合,我們把它們所需要的檔案加入到集合裡面即可。

這樣我們在頁面裡面,就可以呈現出中文的界面說明和提示了,如下界面所示。

基于Metronic的Bootstrap開發架構經驗總結(5)--Bootstrap檔案上傳插件File Input的使用

一般情況下,我們可以定義一個JS的通用函數,用來初始化這個插件控件的,如下JS的函數代碼所示。

頁面代碼裡面,我們放置一個檔案上傳控件,如下代碼所示。

這樣我們腳本代碼的初始化代碼如下:

這樣就完成了控件的初始化了,如果我們需要上傳檔案,那麼還需要JS的代碼處理用戶端上傳的事件,同時也需要MVC背景控制器處理檔案的儲存操作。

例如我對窗體資料的儲存處理代碼如下所示。

其中我們注意到檔案儲存的處理邏輯代碼部分:

第一行代碼就是重新建構上傳的附加内容,如使用者的ID資訊等,這樣我們就可以根據這些ID來建構一些額外的資料給背景上傳處理了。

這個函數主要就是重新給ID指派,友善上傳的時候,擷取最新的附加參數,這個和Uploadify的處理模式一樣的。

前面我們看到,我上傳的位址為:"/User/EditPortrait",這個背景的函數我也公布一下,希望給大家一個完整的案例代碼學習。

這樣我們就建構了上面的使用者肖像的儲存處理邏輯了,檔案可以正常的儲存到背景的檔案系統裡面,同時資料庫裡面記錄一些必備的資訊。

當然,除了用來處理使用者的肖像圖檔,我們也可以用來建構圖檔相冊的處理操作的,具體界面如下所示。

基于Metronic的Bootstrap開發架構經驗總結(5)--Bootstrap檔案上傳插件File Input的使用

這部分的初始化代碼如下所示:

基于Metronic的Bootstrap開發架構經驗總結(5)--Bootstrap檔案上傳插件File Input的使用

如果有興趣,可以繼續參考系列文章:

<a href="http://www.cnblogs.com/wuhuacong/p/4757984.html">基于Metronic的Bootstrap開發架構經驗總結(1)-架構總覽及菜單子產品的處理</a>

<a href="http://www.cnblogs.com/wuhuacong/p/4759564.html">基于Metronic的Bootstrap開發架構經驗總結(2)--清單分頁處理和插件JSTree的使用</a>

<a href="http://www.cnblogs.com/wuhuacong/p/4774396.html">基于Metronic的Bootstrap開發架構經驗總結(5)--Bootstrap檔案上傳插件File Input的使用</a>

<a href="http://www.cnblogs.com/wuhuacong/p/4777720.html">基于Metronic的Bootstrap開發架構經驗總結(7)--資料的導入、導出及附件的檢視處理</a>