最近、暇なときに、ブートストラップ ファイル入力コンポーネントの一般的な使用法をいくつかまとめました。参考として、また今後の検索を容易にするために、スクリプト ホーム プラットフォームで共有したいと思います。この記事がうまく書かれていない場合はご容赦ください。
1. エフェクトの表示
1. 元の input type='file' は見るに耐えません。
2. 装飾のないブートストラップ ファイル入力: (ブートストラップ ファイル入力の主な進化)
3. ブートストラップ ファイル入力の高度な進化: 中国文化、ドラッグ アンド ドロップ アップロード、ファイル拡張子の検証 (必須ファイルでない場合はアップロードされません)
ドラッグ アンド ドロップしてアップロードします
アップロード中
4. ブートストラップ ファイル入力の究極の進化: 複数のファイルを複数のスレッドで同時にアップロードできます。
アップロード中
アップロード後
2. コード例
どうですか?効果はどうですか?上記の効果は段階的に実現していきますので、ご安心ください。
1. cshtml ページ
まず、必要な js および css ファイルを導入します。
//bootstrap fileinput bundles.add(new scriptbundle("~/content/bootstrap-fileinput/js").include( "~/content/bootstrap-fileinput/js/fileinput.min.js", "~/content/bootstrap-fileinput/js/fileinput_locale_zh.js")); bundles.add(new stylebundle("~/content/bootstrap-fileinput/css").include( "~/content/bootstrap-fileinput/css/fileinput.min.css")); @scripts.render("~/content/bootstrap-fileinput/js") @styles.render("~/content/bootstrap-fileinput/css")
次に、input type='file' タグを定義します
<form> <div class="modal fade" id="mymodal" tabindex="-1" role="dialog" aria-labelledby="mymodallabel"> <div class="modal-dialog modal-lg" role="document"> <div class="modal-content"> <div class="modal-header"> <button type="button" class="close" data-dismiss="modal" aria-label="close"><span aria-hidden="true">×</span></button> <h4 id="请选择excel文件">请选择excel文件</h4> </div> <div class="modal-body"> <a href="~/data/exceltemplate/order.xlsx" class="form-control" style="border:none;">下载导入模板</a> <input type="file" name="txt_file" id="txt_file" multiple class="file-loading" /> </div></div> </div> </div> </form>
この文に注目してください:
<input type="file" name="txt_file" id="txt_file" multiple class="file-loading" />
multiple は複数のファイルを同時にアップロードできることを示し、class="file-loading" はタグのスタイルを示します。
2. js の初期化
$(function () { //0.初始化fileinput var ofileinput = new fileinput(); ofileinput.init("txt_file", "/api/orderapi/importorder"); }); //初始化fileinput var fileinput = function () { var ofile = new object(); //初始化fileinput控件(第一次初始化) ofile.init = function(ctrlname, uploadurl) { var control = $('#' + ctrlname); //初始化上传控件的样式 control.fileinput({ language: 'zh', //设置语言 uploadurl: uploadurl, //上传的地址 allowedfileextensions: ['jpg', 'gif', 'png'],//接收的文件后缀 showupload: 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}!", }); //导入文件上传完成之后的事件 $("#txt_file").on("fileuploaded", function (event, data, previewid, index) { $("#mymodal").modal("hide"); var data = data.response.lstorderimport; if (data == undefined) { toastr.error('文件格式类型不正确'); return; } //1.初始化表格 var otable = new tableinit(); otable.init(data); $("#div_startimport").show(); }); } return ofile; };
説明:
(1) fileinput() メソッドは、多くの属性を含む json データで渡されます。各属性は、アップロード コントロールの初期化時の特性を表します。これらの属性が設定されていない場合は、デフォルト設定を使用することを意味します。庭の友達がそれに含まれる属性を知りたい場合は、最後に示すように、fileinput.js のソース コードを開くことができます。
これらのプロパティが特に設定されていない場合は、デフォルト値が使用されます。
(2)$("#txt_file").on("fileuploaded", function (event, data,reviewid, index) {}このメソッドは、アップロードの完了後にコールバック イベントを登録します。つまり、アップロードが完了した後、ファイルは明後日に処理されます。処理するにはこのメソッドを入力してください。
3. バックエンド c# 対応メソッド
js の初期化制御メソッド fileinput() にパラメータ url があったことを覚えていますか? この url に対応する値は、c# の対応する処理メソッドを示します。またはバックグラウンド処理方法を投稿してください。
[ActionName("ImportOrder")] public object ImportOrder() { var oFile = HttpContext.Current.Request.Files["txt_file"]; var lstOrderImport = new List<DTO_TO_ORDER_IMPORT>(); #region 0.数据准备 var lstExistOrder = orderManager.Find(); var lstOrderNo = lstExistOrder.Select(x => x.ORDER_NO).ToList(); var lstTmModel = modelManager.Find(); var lstTmMaterial = materialManager.Find(); //var iMax_Import_Index = lstExistOrder.Max(x => x.IMPORT_INDEX); //iMax_Import_Index = iMax_Import_Index == null ? 0 : iMax_Import_Index.Value; #endregion #region 1.通过Stream得到Workbook对象 IWorkbook workbook = null; if (oFile.FileName.EndsWith(".xls")) { workbook = new HSSFWorkbook(oFile.InputStream); } else if(oFile.FileName.EndsWith(".xlsx")) { workbook = new XSSFWorkbook(oFile.InputStream); } if (workbook == null) { return new { }; } //...............处理excel的逻辑 //orderManager.Add(lstOrder); lstOrderImport = lstOrderImport.OrderBy(x => x.IMPORT_STATU).ToList(); return new { lstOrderImport = lstOrderImport }; }
ブロガーのプロジェクトは excel をアップロードすることであるため、ここでは npoi のロジックが使用されます。写真などのファイルをアップロードする場合は、gdi を使用して写真を処理できます。
4. 複数のファイルを同時にアップロードする
複数のファイルが同時にアップロードされると、フロントエンドは複数の非同期リクエストをバックグラウンドに送信します。つまり、3 つのファイルが同時にアップロードされると、バックグラウンドの importorder メソッドが 3 回入力されます。 。これにより、マルチスレッドを使用して 3 つのファイルを同時に処理できるようになります。
3. 概要
これで、ブートストラップ ファイル入力の基本的な使用方法の紹介は終わりました。実際には、これは単なるアップロード コンポーネントであり、高度な使用方法はありません。焦点は、インターフェイスをよりフレンドリーにし、ユーザー エクスペリエンスを向上させることです。
これは、bootstrap fileinput ファイル アップロード コンポーネントの詳細な使用法に関するすべてです。お役に立てば幸いです。

一个好的网站,不能只看外表,网站后台同样很重要。本篇文章给大家分享10款好看又实用的Bootstrap后台管理系统模板,可以帮助大家快速建立强大有美观的网站后台,欢迎下载使用!如果想要获取更多后端模板,请关注php中文网后端模板栏目!

bootstrap与jquery的关系是:bootstrap是基于jquery结合了其他技术的前端框架。bootstrap用于快速开发Web应用程序和网站,jquery是一个兼容多浏览器的javascript库,bootstrap是基于HTML、CSS、JAVASCRIPT的。

好看又实用的Bootstrap电商源码模板可以提高建站效率,下面本文给大家分享7款实用响应式Bootstrap电商源码,均可免费下载,欢迎大家使用!更多电商源码模板,请关注php中文网电商源码栏目!

好看又实用的企业公司网站模板可以提高您的建站效率,下面PHP中文网为大家分享8款Bootstrap企业公司网站模板,均可免费下载,欢迎大家使用!更多企业站源码模板,请关注php中文网企业站源码栏目!

在bootstrap中,sm是“小”的意思,是small的缩写;sm常用于表示栅格类“.col-sm-*”,是小屏幕设备类的意思,表示显示大小大于等于768px并且小于992px的屏幕设备,类似平板设备。

bootstrap默认字体大小是“14px”;Bootstrap是一个基于HTML、CSS、JavaScript的开源框架,用于快速构建基于PC端和移动端设备的响应式web页面,并且默认的行高为“20px”,p元素行高为“10px”。

bootstrap modal关闭的方法:1、连接好bootstrap的插件;2、给按钮绑定模态框事件;3、通过“ $('#myModal').modal('hide');”方法手动关闭模态框即可。

bootstrap是免费的;bootstrap是美国Twitter公司的设计师“Mark Otto”和“Jacob Thornton”合作基于HTML、CSS、JavaScript 开发的简洁、直观、强悍的前端开发框架,开发完成后在2011年8月就在GitHub上发布了,并且开源免费。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

ホットトピック









