2016-09-23 2 views
0

Ich weiß, wie die ganze Form wie unten oder ein bestimmtes Feld des Formulars in Beispiel serialisiert werden, indem einfach die Zeile zu ändern:jQuery Ajax serialize nur 2 Felder

data: $('form').serialize(), 

zu

data: $('#input-field').serialize(), 

.

$(document).on('input paste', '#soap', function() { 
    $.ajax({ 
    type:'POST', 
    url:'/soap', 
    headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')}, 
    data: $('form').serialize(), 
     success:function(data){ 
      $('input[id=msg]').val(data.msg); 
     } 
    }); 
}); 

Aber ich möchte 2 Eingabefelder mit einer ID serialisieren .... wie geht das?

+0

[ '$ .param()'] (https://api.jquery.com/jquery.param/) – Andreas

Antwort

2

Way 1: Durch getrennt Selektor Komma Sie zwei Felder zusammen folgenden unter Verwendung von Code

var seializedTwoFields = $('#input-field1,#input-field2').serialize(); 

Way 2 serialisiert werden kann: Wenn Sie die jQuery() Funktion Serialisierung verwenden, wird es einfach Ihr Feld in eine Zeichenfolge im Format a = 1. Sie können diese Funktion also sicher auf zwei Felder anwenden und das Ergebnis mit einem & zwischen ihnen verketten.

Bitte versuchen Sie dieses Snippet.

var formfield1 = $('#input-field1').serialize(); 
var formfield2 = $('#input-field2').serialize(); 

var seializedTwoFields = formfield1+'&'+formfield2; 
+0

hmm ... ich verwende Laravel so wollte ich nur die beiden Eingangs schicken Felder zu meinem Controller durch Ajax und erhalten sie mit $ var1 = $ Anfrage-> Nummer und $ var2 = $ Anfrage-> Code. Dies funktioniert gut mit Daten: $ ('Form'). Serialize(), – lewis4u

+0

dies mit Koma, sollte perfekt sein ... ich werde das jetzt versuchen – lewis4u

+0

@ lewis4u überprüfen Sie meine aktualisierte Antwort Ich habe zwei Möglichkeiten geteilt. –