Nicht aktiviert Kontrollkästchen null-Wert zurückgeben

Habe ich eine Reihe von Kontrollkästchen, die, wenn aktiviert, übergeben Sie den Wert 1, ansonsten übergeben Sie den Wert 0. Jedoch, anstatt den Wert der nicht angehackte Checkboxen werden als '0', der Wert gesendet wird, ist 'NULL'.

Habe ich den folgenden JS code in Ort, sollte der Wert 0/1 entsprechend, aber immer noch der Wert gesendet wird, als NULL. Gibt es etwas, das getan werden kann, um sicherzustellen, dass der Wert übergeben, der im Falle einer unchecked checkbox 0 ist?

$('#cb1, #cb2, #cb3, #cb4').on('click', function ()
    $(this).val(this.checked ? 1 : 0);
});

AKTUALISIERT
Hier ist mein html:

<input type="checkbox" name="cb1" id="cb1" value="1" checked />
<input type="checkbox" name="cb2" id="cb2" value="1" checked />
<input type="checkbox" name="cb3" id="cb3" value="1" checked />
<input type="checkbox" name="cb4" id="cb4" value="1" checked />

Sind Sie alle standardmäßig aktiviert.

Wenn einer von Ihnen deaktiviert ist, MySQL meldet folgenden Fehler:
0SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'ColumnName' darf nicht null sein.

Dies ist, weil die Spalten werden festgelegt set nicht Null sein. Und auch wenn ich den Standardwert auf 0, sobald ich auf den submit-button, ich bekomme immer noch den Fehler. Ich versucht zu entfernen, die not NULL-Eigenschaft jedoch eher als prefilling den Wert 0, war der Eingang NULL in der Datenbank.

  • Konnte Sie auch Ihre html?
  • Sollten Sie Ihr HTML so: <input type="hidden" name="cb1" value="0" /><input type="checkbox" name="cb1" id="cb1" value="1" checked /> .
  • dies sollte funktionieren, aber Sie werden fehlen ein { in javascript... hier ist ein fiddle: jsfiddle.net/5vS3S
InformationsquelleAutor user1809790 | 2012-12-28
Schreibe einen Kommentar