2016-07-30 38 views
1

ich eine Form haben, die einen Auswahleingang hatAnfordern von eingegebenen Daten

<select class="form-control" id="taskSelect" name="taskSelect" > 
    <option value="" name="task" id="task">Select One</option> 
    <option value="1" name="task">1</option> 
    <option value="2" name="task">2</option> 
</select> 

nun je nachdem, was gewählt wird, erscheint eine Unterform. Ich habe ein Beispiel JSFiddle

Jetzt einrichten Ich brauche alle Daten zu übergeben, die

auf eine Funktion abgeschlossen wurde
submitHandler: function(form){ 
    var params = $(form).serialize(); 
    generatePDF(params); 
} 

Normalerweise den Eingang bekommt ich so etwas wie diese

$('#someInput').val(); 

tun würde Aber in meiner Situation weiß ich nicht, was eingegeben wird, damit ich Dinge serialisieren kann. Wenn Auswahl 1 ausgewählt ist, brauche ich nur die Eingaben für die Felder, die angezeigt werden, nicht die Felder für Auswahl 2. Serialisierung scheint alle Eingaben zu erfassen, nicht die, die ich möchte.

Was ist der beste Weg, nur die eingegebenen Daten an die Funktion zu übergeben?

Dank

Antwort

1

Vielleicht können Sie versuchen, das Formular in zwei Teile aufgeteilt wird. Sobald dies erledigt ist, können Sie nur das ausgewählte Formular serialisieren. Dies ist vorausgesetzt, Sie haben keine anderen Formularelemente außerhalb der beiden Aufgaben, die Sie oben erwähnt

+0

Es ist eigentlich ziemlich viele Elemente, und weil ich JQuery Validate verwenden, ist alles in einem einzigen Formular für die Validierung –

+0

Wahrscheinlich Sie kann divs verwenden, um alle Eingabeelemente im div selektiv zu serialisieren. Mit Jquery können Sie jedes Eingabeelement separat serialisieren. Verwenden Sie divs, um Elemente zu gruppieren, die Sie serialisieren möchten. –

Verwandte Themen