Bugs ajax

Eléphant du PHP | 51 Messages

08 juil. 2019, 21:03

Bonsoir, là un truck bizarre m'arrive lors des requêtes Ajax.
$('#blog').on('submit', function (e) {
     e.preventDefault();
     var formu = $('#blog').get(0);
     var formData = new FormData(formu);
     var $form = $(this);
     $.ajax($form.attr('action'), {
          type: 'POST',
          data: formData,
          dataType: 'json',
          processData: false,
          contentType: false,
          mimeType: "multipart/form-data",
     })
     .done(function (data, text, jqxhr) {
          $rep = $(jqxhr.responseText);
          $('#article').prepend($rep);
     })
     .fail(function (jqxhr) {
          $rep = $(jqxhr.responseText);
          $('#error').prepend($rep);
     })
     .always(function () {

     });
});
Et côté PHP je renvoi une erreur d'entête pour savoir quant il y a une erreur :
header('500 Internal Server Error', true, 500);
echo '<p>Une erreur</p>';
Normalement tous dois fonctionner, mais la un truc bizarre.
Le prepend ne fonctionne que quand je le met dans .fail!! Donc même quand il y a pas d'erreur la fonction lit toujours .fail()

S'il vous plaît quelqu'un pour m'aider.

Eléphant du PHP | 51 Messages

09 juil. 2019, 02:00

Bonsoir, et là je me rends compte que c'est uniquement quand je provoque une erreur 404 que les instructions inclus dans .done s'excute (par exemple je met une fausse url).