當前位置:首頁 » 文件管理 » bootstrap上傳控制項

bootstrap上傳控制項

發布時間: 2023-02-15 18:28:37

㈠ bootstrap-fileinput組件怎麼在上傳時指定額外的URL參數

由於英文水平問題,閱讀官方文檔時沒有找到該問題的解決方法,於是去github提了一個issue ,得到的答案是仔細閱讀文檔,裡面有一個回調函數可以解決問題??
解決方法
關鍵的配置參數是uploadExtraData
具體的代碼如下:
//獲得額外參數的方法
fodderType = function() {
return $("#fodderTypeSelect").val();
};
//初始化fileinput控制項(第一次初始化)
function initFileInput(ctrlName, FileExtensions, fileSize) {
var control = $('#' + ctrlName);
control.fileinput({
language: 'zh', //設置語言
uploadUrl: "/WxMedia/ImageUpload", //上傳的地址
allowedFileExtensions: FileExtensions, //接收的文件後綴
showUpload: true, //是否顯示上傳按鈕
showCaption: true, //是否顯示標題,
maxFileSize: fileSize * 1000, //單位為kb,如果為0表示不限制文件大小
browseClass: "btn btn-primary", //按鈕樣式
previewFileIcon: "<i class='glyphicon glyphicon-king'></i>",
initialCaption: "請選擇上傳素材",
uploadExtraData: function(previewId, index) { //額外參數的關鍵點
var obj = {};
obj.fodder = fodderType();
console.log(obj);
return obj;
}
});
}
關鍵點:
可以看到配置文件中uploadExtraData的參數是一個函數形式,這是一個回調函數,會在上傳時調用,讀取配置的額外參數。

㈡ BootStrapFileinput手機圖片上傳顯示旋轉問題怎麼辦

最近因為項目需要用到了bootstrap fileinput的'插件,在使用蘋果手機上傳圖片預覽時,發現圖片方向和手機本地存儲方向不一致問題。後來通過查詢資料了解圖片具有EXIF(Exchangeable Image File Format)旋轉屬性標識,fileinput對旋轉進行了處理。預覽圖片顯示的為電腦圖片存放方向。

用iPhone手機通過home鍵朝向四個不同的方向進行拍照後,上傳照片顯示與預覽圖片方向並不一致。有點不明白其中緣由,後來發現了規則,只有Home鍵朝下和朝上的時候才會發現顯示不一致問題。解決方案如下:

fileinput.css、fileinput.min.css文件中,css樣式旋轉角度存在問題,修改以下樣式就可以啦。Home鍵朝下拍攝

.rotate-6 { /*transform: rotate(90deg);原代碼*/ transform: rotate(270deg);}

Home鍵朝上拍攝

.rotate-8 { /*transform: rotate(270deg);原代碼*/ transform: rotate(90deg);}

㈢ bootstrap 多文件上傳

```

<link href="/static/backend/css/fileinput.css" rel="stylesheet" />

 <script src="/static/backend/js/fileinput.js"></script>

 <link href="/static/backend/css/fileinput.min.css" rel="stylesheet" />

 <script src="/static/backend/js/fileinput.min.js"></script>

      <div class="file-loading">

        <input type="file" id="myfile" name="myfile[]" multiple data-allowed-file-extensions='["csv"]'/>//只能是csv 文件。 name=myfile[] 可以上傳多個文件

       </div>

 </div>

Js

 $("#myfile").fileinput({

uploadUrl: "/backend/home/upload", //上傳地址

uploadAsync: false, //設置上傳同步非同步 此為同步

            showUpload: true,

            showRemove: true,

         //   showClose: true,

maxFileCount: 10, //表示允許同時上傳的最大文件個數

          /*  layoutTemplates:{

                actionDelete: ''

            },

            browseClass: 'btn btn-primary'*/

        });

後台/backend/home/upload

 public function upload(){

        var_mp($_FILES['myfile']);

      foreach ($_FILES["myfile"]['tmp_name'] as$k =>$v){

                   move_uploaded_file($v,ROOT_PATH.'public'.DS.'uploads'.DS.$_FILES['myfile']['name'][$k]);

Uploads要自己創建好文件夾

            }

        return 1; // 上傳後要返回1

    }

```

<input type="file" id="myfile" name="myfile" multiple 控制可以上傳多個 data-allowed-file-extensions='["csv"]'/>

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

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

data-allowed-file-extensions= '["csv"]'

限定上傳什麼文件。

㈣ Bootstrap-bootstrap有沒有形式簡單的文件上傳組件

有的有的,bootstrap的資源多得很吶
貢獻一個我用過的控制項,其實質是統一在各瀏覽器下的外觀顯示,不過注意,IE7會出問題。
印象中bootstrap2和3都能用
http://gregpike.net/demos/bootstrap-file-input/demo.html

㈤ bootstrap-fileinput-master 怎麼改成上傳一個

文件上傳插件File Input介紹
這個插件主頁地址是:http://plugins.krajee.com/file-input,可以從這里看到很多Demo的代碼展示:http://plugins.krajee.com/file-basic-usage-demo。
這是一個增強的 HTML5 文件輸入控制項,是一個 Bootstrap 3.x 的擴展,實現文件上傳預覽,多文件上傳等功能。
一般情況下,我們需要引入下面兩個文件,插件才能正常使用:
bootstrap-fileinput/css/fileinput.min.css
bootstrap-fileinput/js/fileinput.min.js
簡單的界面效果如下所示,和眾多上傳文件控制項一樣,可以接受各種類型的文件。當然,我們也可以指定具體接受的文件類型等功能。

如果需要考慮中文化,那麼還需要引入文件:
bootstrap-fileinput/js/fileinput_locale_zh.js
這樣基於MVC的Bundles集合,我們把它們所需要的文件加入到集合裡面即可。
//添加對bootstrap-fileinput控制項的支持
css_metronic.Include("~/Content/MyPlugins/bootstrap-fileinput/css/fileinput.min.css");
js_metronic.Include("~/Content/MyPlugins/bootstrap-fileinput/js/fileinput.min.js");
js_metronic.Include("~/Content/MyPlugins/bootstrap-fileinput/js/fileinput_locale_zh.js");

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

2、文件上傳插件File Input的使用
一般情況下,我們可以定義一個JS的通用函數,用來初始化這個插件控制項的,如下JS的函數代碼所示。

//初始化fileinput控制項(第一次初始化)
function initFileInput(ctrlName, uploadUrl) {
var control = $('#' + ctrlName);

control.fileinput({
language: 'zh', //設置語言
uploadUrl: uploadUrl, //上傳的地址
allowedFileExtensions : ['jpg', 'png','gif'],//接收的文件後綴
showUpload: false, //是否顯示上傳按鈕
showCaption: false,//是否顯示標題
browseClass: "btn btn-primary", //按鈕樣式
previewFileIcon: "<i class='glyphicon glyphicon-king'></i>",
});
}

頁面代碼裡面,我們放置一個文件上傳控制項,如下代碼所示。
<div class="row" style="height: 500px">
<input id="file-Portrait1" type="file">
</div>

這樣我們腳本代碼的初始化代碼如下:
//初始化fileinput控制項(第一次初始化)
initFileInput("file-Portrait", "/User/EditPortrait");

這樣就完成了控制項的初始化了,如果我們需要上傳文件,那麼還需要JS的代碼處理客戶端上傳的事件,同時也需要MVC後台控制器處理文件的保存操作。
例如我對窗體數據的保存處理代碼如下所示。

//添加記錄的窗體處理
formValidate("ffAdd", function (form) {
$("#add").modal("hide");
//構造參數發送給後台
var postData = $("#ffAdd").serializeArray();
$.post(url, postData, function (json) {
var data = $.parseJSON(json);
if (data.Success) {
//增加肖像的上傳處理
initPortrait(data.Data1);//使用寫入的ID進行更新
$('#file-Portrait').fileinput('upload');

//保存成功 1.關閉彈出層,2.刷新表格數據
showTips("保存成功");
Refresh();
}
else {
showError("保存失敗:" + data.ErrorMessage, 3000);
}
}).error(function () {
showTips("您未被授權使用該功能,請聯系管理員進行處理。");
});
});

其中我們注意到文件保存的處理邏輯代碼部分:
//增加肖像的上傳處理
initPortrait(data.Data1);//使用寫入的ID進行更新
$('#file-Portrait').fileinput('upload');

第一行代碼就是重新構建上傳的附加內容,如用戶的ID信息等,這樣我們就可以根據這些ID來構建一些額外的數據給後台上傳處理了。
這個函數主要就是重新給ID賦值,方便上傳的時候,獲取最新的附加參數,這個和Uploadify的處理模式一樣的。

//初始化圖像信息
function initPortrait(ctrlName, id) {
var control = $('#' + ctrlName);
var imageurl = '/PictureAlbum/GetPortrait?id=' + id + '&r=' + Math.random();

//重要,需要更新控制項的附加參數內容,以及圖片初始化顯示
control.fileinput('refresh', {
uploadExtraData: { id: id },
initialPreview: [ //預覽圖片的設置
"<img src='" + imageurl + "' class='file-preview-image' alt='肖像圖片' title='肖像圖片'>",
],
});
}

㈥ 請問你有Thinkphp下使用Bootstrap File Input多文件上傳的案例嗎

現在我們開始使用插件
(1)首先引入文件
<!--css文件-->
<link href="__PUBLIC__/css/fileinput.css" media="all" rel="stylesheet" type="text/css" />

<link href="__PUBLIC__/css/bootstrap.min.css?v=3.3.6" rel="stylesheet">

<!--js文件-->
<script src="__PUBLIC__/js/jQuery.min.js" type="text/javaScript"></script>
<script src="__PUBLIC__/js/bootstrap.min.js?v=3.3.6"></script>
<script src="__PUBLIC__/js/plugins/fileinput.js" type="text/javascript"></script>
<script src="__PUBLIC__/js/fileinput.min.js" type="text/javascript"></script>

(2)初始化控制項
<input id="file" name="file_data[]" type="file" multiple data-preview-file-type="any" data-show-caption="true">
data-preview-file-type="any" :設置之後可以上傳多個文件
name="file_data[]" :因為要上傳多個文件所以要用數組
(3)js初始化控制項
$("#file").fileinput({
uploadUrl: "{:U('Admin/Img/imgupload2')}",// 上傳路徑
uploadAsync: false,//是否非同步傳輸
maxFileCount: 5//最大文件上傳數量
}).on('filebatchpreupload', function(event, data, id, index) {

}).on('filebatchuploadsuccess', function(event, data) {//上傳成功從伺服器端返回的數據(即保存的文件名稱)
for(var i=0;i<data.response.length;i++){
alert(data.response[i].flag);
}
});
(4)thinkphp對應的方法
public function imgupload2(){
$upload = new \Think\Upload();// 實例化上傳類
$upload->maxSize = 3145728 ;// 設置附件上傳大小
$upload->exts = array('jpg', 'gif', 'png', 'jpeg');// 設置附件上傳類型
$upload->rootPath = './Public/Uploads/';// 設置附件上傳根目錄
$upload->savePath = ''; // 設置附件上傳(子)目錄
$info = $upload->upload(array($_FILES['file_data'])); // 上傳文件
$i=0;
if(!$info) {// 上傳錯誤提示錯誤信息
$a[$i]['flag']="no";
$this->ajaxReturn($a,'JSON');
}else{// 上傳成功 獲取上傳文件信息
foreach($info as $file){
$a[$i]['flag']=$file['savepath'].$file['savename'];
$i++;
}
}
$this->ajaxReturn($a,'JSON');
}

㈦ Bootstrap-fileinput上傳控制項 前端JS怎麼獲取伺服器端執行後的返回值,求解

$("#file1").on("fileuploaded", function (event, data, previewId, index) {
va url = data.response.Result;
});

㈧ bootstrap上傳插件fileinput 怎麼沒有查看原圖

一般情況下,我們需要引入下面兩個文件,插件才能正常使用: bootstrap-fileinput/css/fileinput.min.css bootstrap-fileinput/js/fileinput.min.js 簡單的界面效果如下所示,和眾多上傳文件控制項一樣,可以接受各種類型的文件。當然

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:712
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:974
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:685
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:837
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:743
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1085
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:314
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:194
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:882
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:840