Récupếrer valeur qui change dans un formulaire en JQUERY

Récupếrer valeur qui change dans un formulaire en JQUERY - HTML/CSS - Programmation

Marsh Posté le 24-07-2014 à 08:51:14    

Bonjour à tous,
 
Je bloque sur un problème de récupération de donnée dans un formulaire.
 
Je m'explique, j'ai un formulaire qui récupère uniquement des nombres
 

Code :
  1. <form class="form-horizontal col-sm-12" method="post" action="utilisateur/addUser.php">-->
  2.             <form class="form-horizontal col-sm-12" id="addSpecChanForm" method="POST" action="Controlleur/ChannelControlleur.php">
  3.          
  4.             <fieldset> 
  5.                 <legend >Channels</legend>
  6.                     <div class="form-group col-md-5">
  7.                         <label>Channel S</label>
  8.                             <input type="number" min="0" name="S" id="S" class="form-control required"  data-placement="top" data-trigger="manual">
  9.                     </div>
  10.                     <div class="form-group col-md-2"></div>
  11.                     <div class="form-group col-md-5">
  12.                         <label>Channel U</label>
  13.                             <input type="number" min="0" name="U" id="U" class="form-control required" data-placement="top" data-trigger="manual">
  14.                     </div>
  15.                     <div class="form-group col-md-5">
  16.                         <label>Channel C</label>
  17.                             <input type="number" min="0" name="C" id="C" class="form-control required" data-placement="top" data-trigger="manual">
  18.                     </div>
  19.                     <div class="form-group col-md-2"></div>
  20.                     <div class="form-group col-md-5">
  21.                         <label>Channel X</label>
  22.                             <input type="number" min="0" name="X" id="X" class="form-control required"  data-placement="top" data-trigger="manual">
  23.                     </div>
  24.                     <div class="form-group col-md-5">
  25.                         <label>Channel Ku</label>
  26.                             <input type="number" min="0" name="Ku" id="Ku" class="form-control required" data-placement="top" data-trigger="manual">
  27.                     </div>
  28.                     <div class="form-group col-md-2"></div>
  29.                     <div class="form-group col-md-5">
  30.                         <label>Channel Ka</label>
  31.                             <input type="number" min="0" name="Ka" id="Ka" class="form-control required" data-placement="top" data-trigger="manual">
  32.                     </div>
  33.                    
  34.                    
  35.             </fieldset>
  36.                 <input type="hidden" id="Satellite_idSatellite" />
  37.             <div class="form-group"><button type="submit" id="addSpecChan" class="btn btn-success pull-right">Ajouter</button> <p class="help-block pull-left text-danger hide" id="form-error">&nbsp; The form is not valid. </p></div>
  38.             </form>


 
après que ce formulaire sois rempli, j'appel à nouveau un formulaire similaire avec du jquery et je met les attribut max avec les valeurs des inputs précédement remplie.
 
Exemple : Pour le channel Ka si j'ai mis 8 la première fois, la seconde fois je ne pourrais mettre des nombres qu'entres 0 et 8
 
Mon problème et que dans le seconde formulaire j'ai :
 

Code :
  1. <div class="form-group col-md-12" id="CauseDiv" style="display: none">
  2.                         <label>Cause de la difference</label>
  3.                         <textarea id="Cause" maxlength="55" ></textarea>
  4.                     </div>


 
et j'aimerais simplement, que lorsque une des valeur du formulaire n'est pas égale à son attribut max, on fait apparaitre cet textarea
 
voici le Jquery que j'ai qui me récupère uniquement la valeur du premier input de mon formulaire ( ici Channel S )
 

Code :
  1. $('#addChanActForm').on('change',function(){
  2.          if($(this).find('input').val() !=  $(this).find('input').attr('max') ){
  3.              $('#CauseDiv').css('display', 'block')
  4.              alert($(this).find('input').val());
  5.          }
  6.          else{
  7.              $('#CauseDiv').css('display', 'none')
  8.              alert($(this).find('input').val());
  9.          }
  10.        
  11.      });


 
Désole si je me suis mal exprimer et merci d'avance pour le coup de main


---------------
Made you your own sentence without believing that of the others...
Reply

Marsh Posté le 24-07-2014 à 08:51:14   

Reply

Marsh Posté le 29-07-2014 à 13:23:48    

Réponse trouvé pour ceux que ça intéresse :
 

Code :
  1. $('#addChanActForm').on('change',function(){
  2.        
  3.          $(":input[type='number']", '#addChanActForm').each(function() {
  4.              var val = $(this).val(); //Valeur de l'input
  5.              var max = $(this).attr('max'); //valeur du max de l'input
  6.            
  7.              if(val != max ){
  8.                 $('#CauseDiv').css('display', 'block');
  9.                 return false;
  10.              }
  11.              else{
  12.                 $('#CauseDiv').css('display', 'none');
  13.              }
  14.          });
  15.      });


---------------
Made you your own sentence without believing that of the others...
Reply

Sujets relatifs:

Leave a Replay

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