


Beispiel für ein jQuery-Plug-in, das die Größe und das Format der hochgeladenen Dateien begrenzt_jquery
May 16, 2016 pm 04:18 PMDas Beispiel in diesem Artikel beschreibt das jQuery-Plug-in, das die Größe und das Format hochgeladener Dateien begrenzt. Teilen Sie es als Referenz mit allen. Die spezifische Analyse lautet wie folgt:
Beim Hochladen von Dateien auf den Client ist es normalerweise erforderlich, die Größe und das Format der Datei zu begrenzen. Die häufigste Methode ist die Verwendung eines bestimmten Plug-Ins. Einige ausgereifte Plug-Ins verfügen über schöne Schnittstellen und leistungsstarke Funktionen. Der einzige Nachteil ist jedoch, dass manchmal Probleme mit der Browserkompatibilität auftreten. In diesem Artikel schreiben wir ein „originales“ jQuery-Plug-in, das die Größe und das Format hochgeladener Dateien begrenzen kann.
Schreiben Sie zunächst ein Plug-In mit dem Namen checkFileTypeAndSize.js. Begrenzen Sie das Dateiformat, indem Sie beurteilen, ob der Suffixname der aktuellen Datei in dem von der Voreinstellung zugelassenen Suffixnamen-Array enthalten ist, indem Sie beurteilen, ob die Größe der aktuellen Datei unter IE und anderen Browsern größer als die von der Voreinstellung zulässige maximale Dateigröße ist voreingestellt, um die Dateigröße zu begrenzen und Rückruffunktionen für Formatfehler, Überschreitung der Grenzgröße und Erfüllung von Bedingungen bereitzustellen.
$.fn.checkFileTypeAndSize = Funktion (Optionen) {
//Standardeinstellungen
var defaults = {
erlaubte Erweiterungen: [],
maxSize: 1024, // Die Einheit ist KB, die standardmäßige maximale Dateigröße beträgt 1 MB = 1024 KB
Erfolg: function () { },
extensionerror: function () { },
sizeerror: function () { }
};
//Einstellungen zusammenführen
Optionen = $.extend(Standards, Optionen);
//Elemente durchqueren
return this.each(function () {
$(this).on('change', function () {
//Dateipfad abrufen
var filePath = $(this).val();
//Dateipfad in Kleinbuchstaben
var fileLowerPath = filePath.toLowerCase();
//Erhalte den Suffixnamen der Datei
var extension = fileLowerPath.substring(fileLowerPath.lastIndexOf('.') 1);
//Bestimmen Sie, ob der Suffixname im voreingestellten und zulässigen Suffixnamen-Array enthalten ist
If ($.inArray(extension, options.allowedExtensions) == -1) {
options.extensionerror();
$(this).focus();
} sonst {
versuchen Sie es mit {
var size = 0;
Wenn ($.browser.msie) {//dh alte Browserversion
var fileMgr = new ActiveXObject("Scripting.FileSystemObject");
var fileObj = fileMgr.getFile(filePath);
size = fileObj.size; //byte
size = size / 1024;//kb
//size = size / 1024;//mb
} else {//Andere Browser
size = $(this)[0].files[0].size;//byte
size = size / 1024;//kb
//size = size / 1024;//mb
} If (size > options.maxSize) {
options.sizeerror();
} else {
options.success();
} } Catch (e) {
alarm("Fehler: "e);
}
}
});
});
};
})(jQuery);
<script src="~/Scripts/checkFileTypeAndSize.js"></script>
<script type="text/javascript">
$(function() {
$('#f').checkFileTypeAndSize({
erlaubte Erweiterungen: ['jpg'],
maxSize: 10,
Erfolg: function() {
alarm('ok');
},
Erweiterungsfehler: function() {
warning('Erlaubtes Format ist: jpg');
zurück;
},
sizeerror: function() {
warning('Maximale Größe 10 KB');
zurück;
}
});
});
</script>
}

Heißer Artikel

Hot-Tools-Tags

Heißer Artikel

Heiße Artikel -Tags

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Was ist das Installationsverzeichnis der Chrome-Plug-in-Erweiterung?
![So erhöhen Sie die Festplattengröße in VirtualBox [Anleitung]](https://img.php.cn/upload/article/000/887/227/171064142025068.jpg?x-oss-process=image/resize,m_fill,h_207,w_330)
So erhöhen Sie die Festplattengröße in VirtualBox [Anleitung]

Wie entferne ich Kommentarbeschränkungen für ein Videokonto? Wie hoch ist die Wortbeschränkung für Kommentare zu einem Videokonto?

Teilen Sie drei Lösungen mit, warum der Edge-Browser dieses Plug-in nicht unterstützt

Wie verwende ich die PUT-Anfragemethode in jQuery?

jQuery-Tipps: Ändern Sie schnell den Text aller a-Tags auf der Seite

Was soll ich tun, wenn die maximale Größe der Dokumente, die WPS-Mitglieder hochladen können, das Limit überschreitet?

Verwenden Sie jQuery, um den Textinhalt aller a-Tags zu ändern
