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?
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)
lesenWenn 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
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.
Tags und Links javascript jquery serialization