Comment envoyer des données de fichier et de chaîne avec FormData() et jQuery AJAX ?

Mary-Kate Olsen
Libérer: 2024-10-22 14:39:02
original
883 Les gens l'ont consulté

How to Send Both File and String Data with FormData() and jQuery AJAX?

Publication de données de fichier et de chaîne avec FormData() et jQuery AJAX

Il est souvent nécessaire d'envoyer à la fois des données de fichier et de chaîne d'entrée via Requêtes AJAX. Pour y parvenir à l'aide de FormData(), suivez ces étapes :

  1. Créez un objet FormData :

    <code class="js">var fd = new FormData();</code>
    Copier après la connexion
  2. Ajouter des données de fichier :
    a. Pour un seul fichier :

    <code class="js">fd.append("file", file_data);</code>
    Copier après la connexion

    b. Pour plusieurs fichiers :

    <code class="js">var file_data = $('input[type="file"]')[0].files; // for multiple files
    for(var i = 0;i<file_data.length;i++){
        fd.append("file_"+i, file_data[i]);
    }</code>
    Copier après la connexion
  3. Ajouter des données de chaîne :

    <code class="js">var other_data = $('form').serializeArray();
    $.each(other_data,function(key,input){
        fd.append(input.name,input.value);
    });</code>
    Copier après la connexion
  4. Envoyer des données avec AJAX :

    <code class="js">$.ajax({
        url: 'url',
        data: fd,
        contentType: false,
        processData: false,
        type: 'POST',
        success: function(data){
            alert(data);
        }
    });</code>
    Copier après la connexion

En suivant ces étapes, vous pouvez envoyer à la fois des données de fichier et de chaîne d'entrée dans le même objet FormData et la même requête AJAX.

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!

source:php
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!