支援多檔案上傳,預覽,拖拽,基於bootstrap的上傳外掛fileinput的ajax非同步上傳
首先需要匯入一些js和css檔案
<link href="__PUBLIC__/CSS/bootstrap.css" rel="stylesheet">
<link type="text/css" rel="stylesheet" href="__PUBLIC__/CSS/fileinput.css" />
<script type="text/javascript" src="__PUBLIC__/JS/bootstrap.min.js"></script>
<script type="text/javascript" src="__PUBLIC__/JS/jquery.min.js"></script>
<script type="text/javascript" src="__PUBLIC__/JS/fileinput.js"></script>
<script type="text/javascript" src="__PUBLIC__/JS/fileinput_locale_zh.js"></script>//中文包,不需要可以不用匯入
html程式碼
<form enctype="multipart/form-data">
<input id="file-1" name="file" type="file" multiple class="file" data-overwrite-initial="false" data-min-file-count="1"/>
</form>
js程式碼
$("#file-1").fileinput({
uploadUrl: '', // 必須設定個路徑進入php程式碼部分
allowedFileExtensions : ['jpg', 'png','gif','txt','zip','ico','jpeg','js','css','java','mp3','mp4','doc','docx'],//允許的檔案型別
overwriteInitial: false,
maxFileSize: 1500,//檔案的最大大小 單位是k
maxFilesNum: 10,//最多檔案數量
// allowedFileTypes: ['image', 'video', 'flash'],
slugCallback: function(filename) {
return filename;
}
});
php程式碼
$file=$_FILES['file'];//獲取上稱檔案的資訊,陣列形式
$date['file_name'] = $file['name'];//檔案的名稱
$date['file_size'] = $file['size'];//檔案的大小
$date['file_type'] = $file['type'];//檔案的型別
然後進行上傳,用ajax返回一個錯誤資訊或者成功資訊
直接用echo返回也行。
樣式: