Partage
  • Partager sur Facebook
  • Partager sur Twitter

Requête $.ajax

Sujet résolu
    18 avril 2018 à 22:17:25

    Bonjour,

    Je viens de faire un requête $.ajax() pour uploader un formulaire qui peut contenir une photo.

    Lorsque je faisais des requêtes en utilisant la methode .load(), cela ne mettait à jour que la parti de ma page que je désirais mais là, la page entière se recharge à la fin de ma fonction et du coup je ne peux pas afficher les message d'erreur ou de réussite.

    J'aurai voulu savoir si c'était un comportement normal sinon, c'est que j'ai fais une bêtise.

    Mon code

    $("form[name='message']").on('submit', function() {
    
      $('#sujet').removeAttr('disabled');
      $('#pour').removeAttr('disabled');
      $('#de').removeAttr('disabled');
      var nbr = $('#nbr_id').val();
      var d = $('#de').val();
      var p = $('#pour').val();
      var s = $('#sujet').val();
      var edit = CKEDITOR.instances['editeur'].getData();
      var fileInput = document.querySelector('#pieceJointe');
      var formData = new FormData();
      formData.append('nbr_id', nbr);
      formData.append('de', d);
      formData.append('pour', p);
      formData.append('sujet', s);
      formData.append('editeur', edit);
      formData.append('pieceJointe', fileInput.files[0]);
      $.ajax({
        type    : 'POST',
        url   : 'recordMess1.php',
        data    : formData,
        dataType: "text",
        processData: false,
        contentType: false,
        success: function(data) {
    
                  alert(data);
                   }
      });
      
    });

    Merci de votre aide car je débute en javascript et Jquery.

    • Partager sur Facebook
    • Partager sur Twitter
      20 avril 2018 à 18:22:15

      Bonjour,

      J'ai fini par réussir à faire fonctionner ma requête. Mais je pense que j'avais un problème sur mon ordi, trop d'onglet ouvert, etc...

      Au retour, elle "injecte" le message dans une fenêtre modal et fait appele à une autre fonction pour nettoyer mon formulaire et ouvrir la fenêtre modal

      Si ça peut aider une autre personne, voici mon code

      $('#envoiMessage').on('click', function(e) {
        e.preventDefault();
      
            $('.remiseZero').removeAttr('disabled');
      
            var nbr = $('#nbr_id').val();
            var d = $('#de').val();
            var p = $('#pour').val();
            var s = $('#sujet').val();
            var edit = CKEDITOR.instances['editeur'].getData();
            var fileInput = document.querySelector('#pieceJointe');
            var formData = new FormData();
      
            formData.append('nbr_id', nbr);
            formData.append('de', d);
            formData.append('pour', p);
            formData.append('sujet', s);
            formData.append('editeur', edit);
            formData.append('pieceJointe', fileInput.files[0]);
      
            $.ajax({
              type    : 'POST',
              url   : 'php/recordMess.php',
              data    : formData,
              dataType: "html",
              processData: false,
              contentType: false,
              success: function(data) {
      
                $('#retourEnvoi').html(data);
                retourReset();
      
                         }
            });
      });

      Mais comme je débute, je suppose qu'on peut grandement l'améliorer, déjà c'est dommage mais serialize n'a pas l'air de fonctionner à cause de l'éditeur CKEditor donc si quelqu'un peut apporter une amélioration, ben ce serai bien pour toutes les autres personnes qui liront ce topic ...

      -
      Edité par florianboy01 20 avril 2018 à 18:26:37

      • Partager sur Facebook
      • Partager sur Twitter

      Requête $.ajax

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown