Téléchargement de fichiers avec sérialisation jQuery et FormData
Lors de la soumission de formulaires à l'aide de la fonction de sérialisation jQuery, rencontrer des champs de fichier d'entrée peut présenter un défi. La méthode de sérialisation standard ne capture pas les données du fichier, ce qui entraîne un $_FILES vide dans le script du serveur.
La solution : FormData
Pour résoudre ce problème, utilisez FormData objet, qui prend en charge tous les types de données de formulaire, y compris les fichiers. Voici une solution complète :
$(document).on("submit", "form", function (event) { event.preventDefault(); // Get the form data as a FormData object var serialized = new FormData(this); $.ajax({ url: $(this).attr("action"), type: $(this).attr("method"), dataType: "JSON", processData: false, contentType: false, data: serialized, success: function (data, status) { // Handle successful file upload here }, error: function (xhr, desc, err) { // Handle errors during file upload }, }); });
Avantages de FormData :
En utilisant FormData avec jQuery, vous pouvez gérer de manière transparente les téléchargements de fichiers dans vos formulaires sans les limitations des méthodes de sérialisation traditionnelles.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!