2009-04-15 10 views
0

Ich habe eine Reihe von Variablen, die aus Formular-IDs gezogen werden, bevor sie in einer Abfragezeichenfolge an PHP gesendet werden. Da es sich bei einer Eingabe um eine Checkbox handelt, versuche ich, AJAX dazu zu bringen, den Variablenwert entsprechend zu setzen, ob er aktiviert ist oder nicht. d. ..AJAX checkbox if Anweisung

if (document.getElementById('bold').checked) { var bold = "true"; 
    } 
    else { var bold = "false"; }  

Aber es sendet eigentlich nichts an die PHP. Ich rate oft Syntax, also wenn jemand korrigieren kann, wäre ich sehr dankbar.

+0

können Sie uns die tatsächliche sendende Methode zeigen? – chosta

Antwort

1

Solange Sie ihm einen Namen gegeben haben, sollte er im Backend z. B. als "Ein" oder "Aus" erreichbar sein.

var $checked = $_POST["checkboxname"] == "on"; 

So ist Ihr Javascript überflüssig.

+0

Im Idealfall würde dies die Antwort sein, aber es wird in einem GET gesendet und die Zeichenfolge hat buchstäblich nur Fett = True oder Fett = und nichts da. Ich habe versucht mit isset() oder leer() ... keiner würde funktionieren. Ich denke, es muss in der JS sortiert werden. – waxical

+0

Kannst du nicht einfach var $ isBold = $ _GET ["fett"] == "true" dann? –

0

Erstens, anstatt: var bold = "true";

Ich glaube, Sie suchen tatsächlich nach etwas wie: document.getElementById ('fett'). Value = "true";

Zweitens, wenn das Kontrollkästchen nicht aktiviert ist, wird nichts an das PHP-Skript gesendet (nicht markierte Kontrollkästchen werden nicht als Teil einer Formularübergabe gesendet).

+0

Daran habe ich nicht gearbeitet, da ich die var danach noch deklarieren muss. Zweitens, normalerweise ist das der Fall, aber dies wird von einer AjaxFunction onChange von irgendetwas eingereicht. Der Wert scheint also unabhängig von den Umständen zu gelten. – waxical

+0

Wenn das der Fall ist, dann stimme ich chosta ... wir müssen den sendenden Code sehen. – Narcissus

+0

Zustimmen, wenn das Kontrollkästchen nicht aktiviert ist, wird nichts mit dem Formular – Strae