bootstrap-fileinput是基于bootstrap的上傳控件,此控件網上有很多例子。我照著例子做后發現請求無法提交到后臺,反復測試后發現,不能禁止預覽(showPreview要設置為true),禁止預覽后fileuploaded則無法響應(實際情況是showPreview=false時, 即便是uploadAsync=true, 也是filebatchuploadsuccess響應返回結果。如果showPreview=true, uploadAsync=true, 才是fileuploaded響應返回結果)。
注意:
如果出現$("#xxxx").fileinput({}); 不生效的情況請將fileinput.js中最后幾行注釋掉:
/* $(document).ready(function () { var $input = $('input.file[type=file]'), count = $input.attr('type') ? $input.length : 0; if (count > 0) { $input.fileinput(); } }); */<link rel="stylesheet" href="css/bootstrapCSS/bootstrap.min.css"><link rel="stylesheet" href="css/bootstrapCSS/bootstrap-theme.min.css"><link rel="stylesheet" href="css/bootstrapCSS/fileinput.css" /><div><input type="file" name="uploadfile" id="uploadfile" multiple class="file-loading" /></div><script type="text/JavaScript" src="js/jQuery.min.js"></script><script type="text/javascript" src="js/bootstrap/fileinput.js"></script><script type="text/javascript" src="js/bootstrap/fileinput_locale_zh.js"></script><script type="text/javascript" src="js/bootstrap/bootstrap.min.js"></script><script type="text/javascript">$("#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: "<i class='glyphicon glyphicon-king'></i>", msgFilesTooMany: "選擇上傳的文件數量({n}) 超過允許的最大數值{m}!", });//異步上傳返回結果處理$('#uploadfile').on('fileerror', function(event, data, msg) { console.log(data.id); console.log(data.index); console.log(data.file); console.log(data.reader); console.log(data.files); // get message alert(msg);});//異步上傳返回結果處理$("#uploadfile").on("fileuploaded", function (event, data, previewId, index) { console.log(data.id); console.log(data.index); console.log(data.file); console.log(data.reader); console.log(data.files); var obj = data.response; alert(JSON.stringify(data.success)); });//同步上傳錯誤處理 $('#uploadfile').on('filebatchuploaderror', function(event, data, msg) { console.log(data.id); console.log(data.index); console.log(data.file); console.log(data.reader); console.log(data.files); // get message alert(msg); }); //同步上傳返回結果處理 $("#uploadfile").on("filebatchuploadsuccess", function (event, data, previewId, index) { console.log(data.id); console.log(data.index); console.log(data.file); console.log(data.reader); console.log(data.files); var obj = data.response; alert(JSON.stringify(data.success)); });//上傳前$('#uploadfile').on('filepreupload', function(event, data, previewId, index) { var form = data.form, files = data.files, extra = data.extra, response = data.response, reader = data.reader; console.log('File pre upload triggered'); });</script>經查資料得知,異步上傳處理錯誤和返回結果要處理fileerror和fileuploaded方法;同步上傳處理錯誤和返回結果filebatchuploaderror和filebatchuploadsuccess方法
以上所述是小編給大家介紹的BootStrap Fileinput的使用教程,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!
新聞熱點
疑難解答