2016-04-18 15 views
0

Ich habe Anzahl der Formulare in meiner Seite.jquery - siehe spezifisches Formular

Wie beziehe ich mich in meinem Code nur auf das Feld in der spezifischen eingereichten form?

     <form class="modal-content" action="#"> 
          <div class="modal-body"> 

           <div id="email-group" class="form-group"> 
            <label for="email">EMAIL</label> 
            <input type="text" class="form-control" name="email"> 
            <div class="help-block"></div> 
            <!-- errors will go here --> 
           </div> 
          </div> 
          <div class="modal-footer"> 
           <button type="button" class="btn btn-default" data-dismiss="modal">CLOSE</button> 
           <button class="btn btn-success submit">SEND<span class="fa fa-arrow-left"></span></button> 
          </div> 
         </form> 


$(document).on('submit','form',function(e) { 
    e.preventDefault(); 

    var formData = { 
     'email'    : $('input[name=email]').val(), 
     'password'   : $('input[name=password]').val(), 
     'captcha'   : $('input[name=captcha]').val() 
    }; 

Antwort

0

können Sie Formularinstanz als $(this) und find() vorgelegt bekommen verwenden, um Felder in der Form vorgelegt zu bekommen. Siehe unten Code

$(document).on('submit','form',function(e) { 
    e.preventDefault(); 

    var formData = { 
     'email'    : $(this).find('input[name=email]').val(), 
     'password'   : $(this).find('input[name=password]').val(), 
     'captcha'   : $(this).find('input[name=captcha]').val() 
    }; 
}); 
0

Sie tun können, dass in JQuery:

$('#your_ID_form input[name=email]').val(); 
0

jedes Ihrer form eine ID Geben und wählt ihn mit id und verwenden this spezifische Werte ausgewählter form auszuwählen.

Und find verwenden, um (große) Kindelemente zu finden.

<form id="form1" class="modal-content" action="#"> 
... 
</form> 

$(document).on('submit','#form1',function(e) { 
    e.preventDefault(); 

    var formData = { 
     'email'    : $(this).find('input[name=email]').val(), 
     'password'   : $(this).find('input[name=password]').val(), 
     'captcha'   : $(this).find('input[name=captcha]').val() 
    }; 
0

können Sie verwenden serializeArray oder einfach serialize:

$(document).on('submit','form',function(e) { 
     e.preventDefault(); 
     var formData = $(this).serializeArray(); 
     // if you need a json format: 
     var jsonFormData = JSON.stringify(formData); 
    });