Erhalte den richtigen Checkbox-Wert mit form.serialize

8

Wir verwenden derzeit $('form').serialize() , um alle Formularinformationen zu erhalten

Dadurch werden alle Kontrollkästchenwerte als "Ein" oder "Aus" zurückgegeben.

Gibt es eine Möglichkeit, einen 1/0 oder wahr / falsch-Wert mit dieser Methode zu erhalten?

    
Theun Arbeider 23.07.2013, 11:41
quelle

5 Antworten

20

Ja. Sie können dies tun, indem Sie eine versteckte Eingabe mit dem gleichen Namen als Kontrollkästchen hinzufügen, welcher Wert gesendet wird, wenn das Kontrollkästchen deaktiviert ist:

%Vor%

Es werden beide Werte gesendet, wenn das Kontrollkästchen aktiviert ist. Aber Serverseite wird die neueste (Wert des Kontrollkästchens)

lesen     
roody 23.07.2013, 11:51
quelle
0

Der Wert eines Formularsteuerelements ist immer ein String. Sie können Optionsfelder verwenden, um verschiedene Werte für denselben Steuerelementnamen zu erhalten:

%Vor%

Nur eins kann überprüft werden, und nur der überprüfte Name / Wert wird an den Server gesendet.

    
RobG 23.07.2013 12:09
quelle
0
%Vor%

setze einfach den Wert

    
Rana 25.03.2015 12:58
quelle
0

Wenn wir auf unserer Seite mehrere Kontrollkästchen aktiviert haben:

%Vor%

Wir müssen das Änderungsereignis dieser Checkboxen binden und seinen Wert auf wahr oder falsch setzen.

%Vor%

Standardmäßig wird das Kontrollkästchen in $ ('form') nicht angezeigt serializeArray (), Es erscheint, wenn es aktiviert ist.

Wir müssen ein verstecktes Feld für jede Checkbox behalten wie:

%Vor%

Wenn wir nun das Formular jetzt serialisieren, bekommen wir den richtigen Wert wie:     Check1 = wahr     Check2 = falsch

    
Rajdeep 04.07.2017 11:58
quelle
0

Sie können eine neue Klasse für Kontrollkästchen hinzufügen und Wert festlegen, wenn Sie darauf klicken.

%Vor%

Und benutze einen kleinen JQuery-Helfer

%Vor%

Dann können Sie den Wert des Kontrollkästchens abrufen oder ein Formular serialisieren.

    
Petro Franko 14.01.2018 22:05
quelle