Heim Web-Frontend js-Tutorial Detaillierte Erläuterung der Verwendung von Bootstrap Fileinput-Datei-Upload-Komponenten_Javascript-Fähigkeiten

Detaillierte Erläuterung der Verwendung von Bootstrap Fileinput-Datei-Upload-Komponenten_Javascript-Fähigkeiten

May 16, 2016 am 09:00 AM
bootstrap fileinput

Ich habe in letzter Zeit etwas Freizeit und habe einige häufige Verwendungszwecke der Bootstrap-Dateieingabekomponente zusammengefasst. Ich möchte sie auf der Script Home-Plattform als Referenz und zur Erleichterung zukünftiger Suchvorgänge veröffentlichen. Bitte verzeihen Sie mir, wenn dieser Artikel nicht gut geschrieben ist.

1. Effektanzeige

1. Der ursprüngliche Eingabetyp = „Datei“ ist einfach unerträglich anzusehen.


2. Bootstrap-Dateieingabe ohne jegliche Dekoration: (primäre Weiterentwicklung der Bootstrap-Dateieingabe)

3. Fortgeschrittene Weiterentwicklung der Bootstrap-Dateieingabe: Chinesische Kultur, Drag-and-Drop-Upload, Überprüfung der Dateierweiterung (wenn es sich nicht um eine erforderliche Datei handelt, wird sie nicht hochgeladen)

Zum Hochladen ziehen und ablegen


Hochladen

4. Die ultimative Weiterentwicklung der Bootstrap-Dateieingabe: Ermöglicht das gleichzeitige Hochladen mehrerer Dateien durch mehrere Threads.


Hochladen


Nachdem der Upload abgeschlossen ist


2. Codebeispiele

Wie wäre es damit? Wie effektiv ist es? Machen Sie sich keine Sorgen, wir werden die oben genannten Effekte Schritt für Schritt erzielen.

1. CSHTML-Seite

Führen Sie zunächst die erforderlichen JS- und CSS-Dateien ein.

//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")
Nach dem Login kopieren

Dann definieren Sie das Tag „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 class="modal-title" id="myModalLabel">请选择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>
Nach dem Login kopieren

Konzentrieren Sie sich auf diesen Satz:

<input type="file" name="txt_file" id="txt_file" multiple class="file-loading" />
Nach dem Login kopieren

multiple gibt an, dass mehrere Dateien gleichzeitig hochgeladen werden dürfen, und class="file-loading" gibt den Stil des Tags an.

2. js-Initialisierung

$(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;
};
Nach dem Login kopieren

Beschreibung:

(1) Die fileinput()-Methode wird in JSON-Daten übergeben, die viele Attribute enthalten, wenn die Upload-Steuerung initialisiert wird. Wenn diese Attribute nicht festgelegt sind, bedeutet dies, dass die Standardeinstellung verwendet wird. Wenn Gartenfreunde sehen möchten, welche Attribute darin enthalten sind, können Sie den Quellcode von fileinput.js öffnen, wie am Ende gezeigt:


Wenn diese Eigenschaften nicht speziell festgelegt sind, werden die Standardwerte verwendet.

(2) $("#txt_file").on("fileuploaded", Funktion (Ereignis, Daten, Vorschau-ID, Index) {}Diese Methode registriert das Rückrufereignis, nachdem der Upload abgeschlossen ist. Das heißt, nach dem Hochladen Datei wird übermorgen verarbeitet. Geben Sie diese Methode ein, um sie zu verarbeiten

3. Backend-C#-entsprechende Methode

Erinnern Sie sich noch daran, dass es in der Initialisierungskontrollmethode fileinput() in js eine Parameter-URL gibt, die dieser URL die entsprechende Verarbeitungsmethode von C# angibt? Oder posten Sie die Hintergrundverarbeitungsmethode.

[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 &#63; 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 };
}
Nach dem Login kopieren
Da das Projekt des Bloggers darin besteht, Excel hochzuladen, wird hier die Logik von NPOI verwendet. Wenn Sie Dateien wie Bilder hochladen, können Sie GDI zum Verarbeiten der Bilder verwenden.

4. Laden Sie mehrere Dateien gleichzeitig hoch

Wenn mehrere Dateien gleichzeitig hochgeladen werden, sendet das Frontend mehrere asynchrone Anforderungen an den Hintergrund. Das heißt, wenn drei Dateien gleichzeitig hochgeladen werden, wird die ImportOrder-Methode im Hintergrund dreimal eingegeben . Dadurch können Sie Multithreading verwenden, um drei Dateien gleichzeitig zu verarbeiten.

3. Zusammenfassung

Die Einführung der grundlegenden Verwendung der Bootstrap-Dateieingabe ist wahrscheinlich abgeschlossen. Tatsächlich handelt es sich lediglich um eine Upload-Komponente, und es gibt keine erweiterten Verwendungsmöglichkeiten. Der Schwerpunkt liegt darauf, die Benutzeroberfläche benutzerfreundlicher zu gestalten und das Benutzererlebnis besser zu verbessern.

Hier geht es um die detaillierte Verwendung der Bootstrap Fileinput-Datei-Upload-Komponente. Ich hoffe, sie wird Ihnen hilfreich sein!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So erhalten Sie die Bootstrap -Suchleiste So erhalten Sie die Bootstrap -Suchleiste Apr 07, 2025 pm 03:33 PM

So verwenden Sie Bootstrap, um den Wert der Suchleiste zu erhalten: Bestimmt die ID oder den Namen der Suchleiste. Verwenden Sie JavaScript, um DOM -Elemente zu erhalten. Holen Sie sich den Wert des Elements. Führen Sie die erforderlichen Maßnahmen aus.

So verwenden Sie Bootstrap in Vue So verwenden Sie Bootstrap in Vue Apr 07, 2025 pm 11:33 PM

Die Verwendung von Bootstrap in Vue.js ist in fünf Schritte unterteilt: Startstrap installieren. Bootstrap in main.js. Verwenden Sie die Bootstrap -Komponente direkt in der Vorlage. Optional: benutzerdefinierter Stil. Optional: Verwenden Sie Plug-Ins.

Wie man vertikale Zentrierung von Bootstrap macht Wie man vertikale Zentrierung von Bootstrap macht Apr 07, 2025 pm 03:21 PM

Verwenden Sie Bootstrap, um die vertikale Zentrierung zu implementieren: FlexBox-Methode: Verwenden Sie den D-Flex, den Justify-Content-Center und die Ausrichtungsklassen aus Align-Item-Center, um Elemente in den Flexbox-Behälter zu platzieren. Methode für Ausstellungs-Iitem-Center-Klassen: Bei Browsern, die Flexbox nicht unterstützen, verwenden Sie die Klasse aus Align-items-Center-Klasse, vorausgesetzt, das übergeordnete Element hat eine definierte Höhe.

So schreiben Sie geteilte Zeilen auf Bootstrap So schreiben Sie geteilte Zeilen auf Bootstrap Apr 07, 2025 pm 03:12 PM

Es gibt zwei Möglichkeiten, eine Bootstrap -Split -Zeile zu erstellen: Verwenden des Tags, das eine horizontale Split -Linie erstellt. Verwenden Sie die CSS -Border -Eigenschaft, um benutzerdefinierte Style Split -Linien zu erstellen.

So ändern Sie Bootstrap So ändern Sie Bootstrap Apr 07, 2025 pm 03:18 PM

Um die Größe der Elemente in Bootstrap anzupassen, können Sie die Dimensionsklasse verwenden, einschließlich: Einstellbreite:.

So fügen Sie Bilder auf Bootstrap ein So fügen Sie Bilder auf Bootstrap ein Apr 07, 2025 pm 03:30 PM

Es gibt verschiedene Möglichkeiten, Bilder in Bootstrap einzufügen: Bilder direkt mit dem HTML -IMG -Tag einfügen. Mit der Bootstrap -Bildkomponente können Sie reaktionsschnelle Bilder und weitere Stile bereitstellen. Legen Sie die Bildgröße fest und verwenden Sie die IMG-Fluid-Klasse, um das Bild anpassungsfähig zu machen. Stellen Sie den Rand mit der img-beliebten Klasse ein. Stellen Sie die abgerundeten Ecken ein und verwenden Sie die IMG-Rund-Klasse. Setzen Sie den Schatten, verwenden Sie die Schattenklasse. Größen Sie die Größe und positionieren Sie das Bild im CSS -Stil. Verwenden Sie mit dem Hintergrundbild die CSS-Eigenschaft im Hintergrund.

So verwenden Sie die Bootstrap -Taste So verwenden Sie die Bootstrap -Taste Apr 07, 2025 pm 03:09 PM

Wie benutze ich die Bootstrap -Taste? Führen Sie Bootstrap -CSS ein, um Schaltflächenelemente zu erstellen, und fügen Sie die Schaltfläche "Bootstrap" hinzu, um Schaltflächentext hinzuzufügen

So richten Sie das Framework für Bootstrap ein So richten Sie das Framework für Bootstrap ein Apr 07, 2025 pm 03:27 PM

Um das Bootstrap -Framework einzurichten, müssen Sie die folgenden Schritte befolgen: 1. Verweisen Sie die Bootstrap -Datei über CDN; 2. Laden Sie die Datei auf Ihrem eigenen Server herunter und hosten Sie sie. 3.. Fügen Sie die Bootstrap -Datei in HTML hinzu; 4. Kompilieren Sie Sass/weniger bei Bedarf; 5. Importieren Sie eine benutzerdefinierte Datei (optional). Sobald die Einrichtung abgeschlossen ist, können Sie die Grid -Systeme, -Komponenten und -stile von Bootstrap verwenden, um reaktionsschnelle Websites und Anwendungen zu erstellen.

See all articles