onchange+ajax

onchange+ajax - HTML/CSS - Programmation

Marsh Posté le 24-05-2012 à 09:02:34    

Bonjour a tous !!!,
 
Je vous expose mon problème:
 
J'utilise ajax pour pouvoir envoyer un formulaire sans recharger la page j'utilise se code la :  
 

Code :
  1. <script language="JavaScript">
  2.   $(document).ready(function() {
  3.   // lorsque je soumets le formulaire
  4.   $('.monForm').on('submit', function() {
  5.             // appel Ajax
  6.             $.ajax({
  7.                 url: $(this).attr('action'), // le nom du fichier indiqué dans le formulaire
  8.                 type: $(this).attr('method'), // la méthode indiquée dans le formulaire (get ou post)
  9.                 data: $(this).serialize(), // je sérialise les données (voir plus loin), ici les $_POST
  10.                 success: function(html) { // je récupère la réponse du fichier PHP
  11.                 //alert(html); // j'affiche cette réponse
  12.                 }
  13.             });
  14.         return false; // j'empêche le navigateur de soumettre lui-même le formulaire
  15.  });
  16. });
  17.  </script>


 
Quand je l'utilise avec un bouton sa marche sans probleme:

Code :
  1. <form class="monForm" method="post" action="planning_cree.php">
  2. <input type="submit" name="Envoyer" value="Envoyer" onclick="this.disabled=true;this.value='Crée'"/>
  3. </form>


 
Âpres j'ai décider de remplacer le bouton par un input de type texte qui utiliserais l’événement [B]onChange[/B]
 

Code :
  1. <form class="monForm" method="post" action="planning_cree.php">
  2. <input type="text" name="Lundi" size="1" onchange="submit();" value="<?php echo $donnees2['Lundi']; ?>" />
  3. </form>


 
Mais la sa m'ouvre la page planning_cree.php je voudais savoir se que je dois modifier sur le code ajax pour que sa n'ouvre pas la page planning_cree.php.
 
Merci D'avance !!!

Reply

Marsh Posté le 24-05-2012 à 09:02:34   

Reply

Marsh Posté le 24-05-2012 à 12:24:39    

rajoute un id a ton champ

Code :
  1. <input type="text" id="Lundi" name="Lundi" size="1" value="<?php echo $donnees2['Lundi']; ?>" />


 
bind l'evenement sur ce champ et plus sur le formulaire
 

Code :
  1. $('.Lundi').on('change', function() {


 
remplace les $this par le formulaire (car sinon $this=> Lundi)

Code :
  1. var $parentform = $(this).closest('.monForm');
  2. $.ajax({
  3.                 url: $parentform.attr('a...


Message édité par pop-pan le 24-05-2012 à 12:34:18

---------------
[VDS] rail vesa, bras ecran, support TV / [ACH] des machins
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed