BootStrap使用file-input插件上傳圖片的方法
最近在寫自己的個(gè)人網(wǎng)站 ,前端使用的bootstrap框架 ,做到上傳圖片功能的時(shí)候網(wǎng)上找到一個(gè)基于bootstrap的圖片上傳框架 file-input 插件, 這個(gè)插件做的非常符合我的審美觀,所以簡(jiǎn)單記錄一下這個(gè)插件的使用方法
首先根據(jù)自己的項(xiàng)目路徑引入插件css和js文件
注意locale語(yǔ)言文件在fileinput.min.js文件之后引入
<!-- file input --> <link href="../../css/fileinput.min.css" rel="stylesheet"> <script src="../../js/fileinput.min.js"></script> <script src="../../js/locales/zh.js" type="text/javascript"></script>
然后是html代碼 因?yàn)槲也皇菍I(yè)前端 所以前端代碼寫的很爛 輕噴敲打
<!-- 模態(tài)框(Modal) --> <span style="white-space:pre"> </span><div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true"> <span style="white-space:pre"> </span><div class="modal-dialog"> <span style="white-space:pre"> </span><div class="modal-content"> <span style="white-space:pre"> </span><div class="modal-header"> <span style="white-space:pre"> </span><button type="button" class="close" data-dismiss="modal" aria-hidden="true"> <span style="white-space:pre"> </span>× <span style="white-space:pre"> </span></button> <span style="white-space:pre"> </span><h3 class="modal-title" id="myModalLabel" align="center"> <span style="white-space:pre"> </span><b>新增曲譜信息</b> <span style="white-space:pre"> </span></h3> <span style="white-space:pre"> </span></div> <span style="white-space:pre"> </span><div class="modal-body"> <span style="white-space:pre"> </span><form id="addForm" class="bs-example bs-example-form" role="form" enctype="multipart/form-data"> <span style="white-space:pre"> </span> <div class="input-group" style="width: 566px;"> <span style="white-space:pre"> </span> <span class="input-group-addon">曲譜名稱</span> <span style="white-space:pre"> </span> <input type="text" id="scoreName" name="scoreName" class="form-control" placeholder=""> <span style="white-space:pre"> </span> </div> <span style="white-space:pre"> </span> <div class="input-group col-lg-5" style="display: inline-table; margin-top: 10px;"> <span style="white-space:pre"> </span> <span style="white-space:pre"> </span><span class="input-group-addon">曲譜類型</span> <span style="white-space:pre"> </span> <input type="text" id="type" name="type" class="form-control"> <span style="white-space:pre"> </span> <span style="white-space:pre"> </span> </div> <span style="white-space:pre"> </span> <span style="white-space:pre"> </span> <div class="input-group col-lg-5" style="display: inline-table; margin-top: 10px;margin-left: 90px;"> <span style="white-space:pre"> </span> <span style="white-space:pre"> </span><span class="input-group-addon">曲譜難度</span> <span style="white-space:pre"> </span> <input type="text" id="difficulty" name="difficulty" class="form-control"> <span style="white-space:pre"> </span> <span style="white-space:pre"> </span> </div> <span style="white-space:pre"> </span> <div class="input-group col-lg-5" style="margin-top: 10px;"> <span style="white-space:pre"> </span> <span class="input-group-addon">曲調(diào)</span> <span style="white-space:pre"> </span> <input type="text" id="tune" name="tune" class="form-control"> <span style="white-space:pre"> </span> </div> <span style="white-space:pre"> </span> <div class="input-group" style="width: 566px; margin-top: 10px;"> <span style="white-space:pre"> </span><input id="fileup" type="file" class="file"/> <span style="white-space:pre"> </span> </div> <span style="white-space:pre"> </span></form> <span style="white-space:pre"> </span></div> <span style="white-space:pre"> </span><div class="modal-footer"> <span style="white-space:pre"> </span><button type="button" class="btn btn-default" data-dismiss="modal">關(guān)閉 <span style="white-space:pre"> </span></button> <span style="white-space:pre"> </span><!-- <span style="white-space:pre"> </span><button type="button" class="btn btn-primary" onclick="addScores()"> <span style="white-space:pre"> </span>提交 <span style="white-space:pre"> </span></button> --> <span style="white-space:pre"> </span></div> <span style="white-space:pre"> </span></div><!-- /.modal-content --> <span style="white-space:pre"> </span></div><!-- /.modal --> <span style="white-space:pre"> </span></div>
然后是js代碼 初始化file-input
//初始化fileinput控件(第一次初始化)
function initFileInput(ctrlName, uploadUrl) {
var control = $('#' + ctrlName);
control.fileinput({
language: 'zh', //設(shè)置語(yǔ)言
uploadUrl: uploadUrl, //上傳的地址
allowedFileExtensions : ['jpg', 'png','gif'],//接收的文件后綴
showUpload: true, //是否顯示上傳按鈕
showCaption: false,//是否顯示標(biāo)題
browseClass: "btn btn-primary", //按鈕樣式
previewFileIcon: "<i class='glyphicon glyphicon-king'></i>",
uploadAsync: false,
uploadExtraData:function (previewId, index) {
var obj = {};
$('#addForm').find('input').each(function() {
var id = $(this).attr('id'), val = $(this).val();
obj[id] = val;
});
return obj;
}
});
}
//初始化fileinput
initFileInput("fileup", http://localhost:8080/web/guita/addGuitaInfo.action);
這段代碼是插件的核心了
upLoadUrl是后臺(tái)給的訪問(wèn)路徑了
這里特別要注意的是這一段
uploadExtraData:function (previewId, index) {
var obj = {};
$('#addForm').find('input').each(function() {
var id = $(this).attr('id'), val = $(this).val();
obj[id] = val;
});
return obj;
}
這一段代碼uploadExtraData適用于傳額外參數(shù)是 可以用于提交form表單的其他input框數(shù)據(jù)
uploadExtraData:{
type:"type",
tune:"tune"
}
一般的靜態(tài)數(shù)據(jù)如上圖提交 后臺(tái)就可以直接接到了 但是這樣寫會(huì)得不到動(dòng)態(tài)數(shù)據(jù) 數(shù)據(jù)只會(huì)在初始化的時(shí)候生成一次 之后不會(huì)改變
這個(gè)問(wèn)題糾結(jié)了我不少時(shí)間 最后是在git上面看外國(guó)朋友們的討論 然后參考api才解決掉

這些寫好之后就可以看到效果圖了

樣式還是很不錯(cuò)的 點(diǎn)擊上傳之后 整個(gè)from的數(shù)據(jù)都會(huì)提交到后臺(tái)
在網(wǎng)上找的很多該插件的應(yīng)用整合的都是php 我是用java寫的這里也上一下后臺(tái)接收的代碼 springmvc框架接收數(shù)據(jù)還是很方便的


這樣就完成了數(shù)據(jù)參數(shù)和圖片參數(shù)的傳遞了 然后后臺(tái)調(diào)用文件上傳的代碼存入圖片即可
該插件該有很多值得研究的用法 這里只是簡(jiǎn)單的說(shuō)一下使用方式并完成動(dòng)態(tài)數(shù)據(jù)的傳輸 剛剛接觸這個(gè)插件的朋友們可以稍微做一下參考。
關(guān)于BootStrap使用file-input插件上傳圖片的方法的相關(guān)知識(shí)就給大家介紹這么多,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- Bootstrap Fileinput文件上傳組件用法詳解
- BootStrap Progressbar 實(shí)現(xiàn)大文件上傳的進(jìn)度條的實(shí)例代碼
- BootStrap智能表單實(shí)戰(zhàn)系列(九)表單圖片上傳的支持
- bootstrap-wysiwyg結(jié)合ajax實(shí)現(xiàn)圖片上傳實(shí)時(shí)刷新功能
- 基于BootStrap Metronic開(kāi)發(fā)框架經(jīng)驗(yàn)小結(jié)【五】Bootstrap File Input文件上傳插件的用法詳解
- BootStrap文件上傳樣式超好看【持續(xù)更新】
- Bootstrap的fileinput插件實(shí)現(xiàn)多文件上傳的方法
相關(guān)文章
JS使用定時(shí)器與事件監(jiān)聽(tīng)實(shí)現(xiàn)輪播圖切換功能
現(xiàn)在很多網(wǎng)站都有輪播圖,下面這篇文章主要給大家介紹了關(guān)于JS如何使用定時(shí)器與事件監(jiān)聽(tīng)實(shí)現(xiàn)輪播圖切換功能的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-11-11
JavaScript實(shí)現(xiàn)可拖拽的拖動(dòng)層Div實(shí)例
這篇文章主要介紹了JavaScript實(shí)現(xiàn)可拖拽的拖動(dòng)層Div的方法,拖拽頁(yè)面中的div塊可實(shí)現(xiàn)div塊按照拖動(dòng)軌跡移動(dòng)的效果,涉及javascript鼠標(biāo)事件、頁(yè)面元素樣式結(jié)合事件函數(shù)動(dòng)態(tài)操作的相關(guān)技巧,需要的朋友可以參考下2015-08-08
基于Bootstrap的標(biāo)簽頁(yè)組件及bootstrap-tab使用說(shuō)明
這篇文章主要介紹了基于Bootstrap的標(biāo)簽頁(yè)組件及bootstrap-tab使用說(shuō)明,需要的朋友可以參考下2017-07-07
JavaScript入門系列之知識(shí)點(diǎn)總結(jié)
JavaScript 是屬于網(wǎng)絡(luò)的腳本語(yǔ)言。本文是小編日常收集整理些javascript入門基礎(chǔ)知識(shí),對(duì)js新手朋友非常有幫助,對(duì)js入門知識(shí)點(diǎn)感興趣的朋友一起學(xué)習(xí)吧2016-03-03
解決JS無(wú)法調(diào)用Controller問(wèn)題的方法
這篇文章主要介紹了解決JS無(wú)法調(diào)用Controller問(wèn)題的方法,需要的朋友可以參考下2015-12-12
JS簡(jiǎn)單實(shí)用的倒計(jì)時(shí)效果實(shí)現(xiàn)代碼
沒(méi)有事研究了下倒計(jì)時(shí)的效果,因此自己練習(xí)了一下,需要的朋友可以參考下2012-08-08
window.location不跳轉(zhuǎn)的問(wèn)題解決方法
window.location的跳轉(zhuǎn)失效的情況有沒(méi)有遇到過(guò)啊,這主要是冒泡傳遞影響了,下面有個(gè)不錯(cuò)的解決方法,大家可以參考下2014-04-04

