J’essaie de créer un formulaire simple pour télécharger des fichiers avec jquery / ajax. cela fait partie de mon code:
var formData = new FormData($(this)[0]); $.ajax({ url: 'uploader.php', type: 'POST', data: formData, async: false, cache: false, contentType: false, processData: false, success: function (data) { $('#ShowR').html(data); } });
J’essaie de changer ce code en méthode $ .post comme ceci:
var formData = new FormData($(this)[0]); $.post('uploader.php', {action:"ShowGTR",MyFiles:formData}, function(data) { $('#ShowR').html(data); });
J’ai essayé de plusieurs manières mais je ne pouvais pas corriger le code et dans la console de Google Chrome j’ai eu cette erreur:
Uncaught TypeError: Illegal invocation
J’ai donc besoin de votre aide pour corriger ce code et convertir la méthode $ .ajax en méthode $ .post . J’apprécie vraiment si quelqu’un peut m’aider pour cela.
Si la seule raison pour laquelle vous voulez convertir votre appel $ .ajax en un appel $ .post est d’append un paramètre, vous n’avez pas besoin de le convertir pour $ .post. Ce que vous devez faire est d’ append le paramètre à l’object formdata.
var formData = new FormData(this); formData.append("action", "ShowGTR"); $.ajax({ url: 'uploader.php', type: 'POST', data: formData, async: false, cache: false, contentType: false, processData: false, success: function (data) { $('#ShowR').html(data); } });
$.post( "ajax_file.php", {username:"someone"} ,function( data ) { $("#div-id").html(data); });
C’est la syntaxe générale de jquery post.