2016-04-07 3 views
-5

Also habe ich ein Formular, wo Benutzer ein paar Checkboxen überprüft. Wenn der Benutzer die Daten übermittelt, werden die Werte der Kontrollkästchen in der Datenbank gespeichert. Was ich versuche zu tun ist, wenn der Benutzer sich erneut anmeldet und das Formular abruft, sollten die Kontrollkästchen aktiviert sein. Gibt es eine Möglichkeit, dies in Coldfusion zu tun?Gekoppelte Kontrollkästchen zurückgeben, wenn Benutzer das Formular abruft (Coldfusion)

<cfinput type="checkbox" name="delegations" id="SPR" value="0" /></t> Student Payment Request 
<cfinput type="checkbox" name="delegations" id="ECR" value="1" /> E-Procurement Check Request</br> 
<cfinput type="checkbox" name="delegations" id="ARR" value="2" /></t> Advance Request/Reconciliation 
<cfinput type="checkbox" name="delegations" id="PC" value="3" /> Petty Cash 
<cfinput type="checkbox" name="delegations" id="CR" class="CR" value="4" /> Chromeriver 
+0

Schritt 1 - Prüfen Sie, ob der Benutzer schon einmal etwas überprüft hat. –

+5

Ich stimme ab, diese Frage als off-topic zu schließen, weil das OP keine Mühe gezeigt hat, das Problem selbst zu lösen. –

Antwort

1

Ich verwende gerne cfparam in diesem Fall wie oben.

<cfparam name="form.delegations" value="#yourQuery.columnname#" /> 

Und in HTML:

<input type="checkbox" name="delegations" id="SR1" value="0" <cfif listFind(form.delegations,0)>checked</cfif> /> 

Bitte beachten Sie, dass der Wert in Ihrer Datenbank eine Liste von Werten von Kontrollkästchen Delegationen.

+2

BIG RED FLAG: Sie sollten die ausgewählten Werte nicht als Liste in einem einzelnen Datensatz speichern. Sie sollten die Daten in einer richtigen Beziehung zwischen vielen und vielen speichern, wobei die Tabelle etwa wie folgt aussieht: [[Eltern-ID | Delegierungs-ID] '. Das heißt, wenn Sie 3 Kontrollkästchen auswählen, haben Sie 3 Datensätze. Wenn Sie die Datenbank nach diesen Daten abfragen, können Sie die Funktion 'ValueList()' von ColdFusion verwenden, um den Inhalt der Spalte "Delegations-ID" in eine durch Kommas getrennte Liste zu konvertieren, die mit 'listFind()' verwendet werden kann. –

1

Ich verwende gerne boolesche Logik dafür. Wenn sie das Kästchen ankreuzen, wird beim Einreichen eine Spalte in der Datenbank mit dem Namen isChecked mit dem Wert 1 ausgefüllt.

Wenn Sie diesen Wert abfragen, können Sie Bedingungen mit dem Ergebnis programmieren.

Beispiel:

<cfinput type="checkbox" name="delegations" id="SPR" value="0" <cfif queryname.isChecked eq 1> checked </cfif> /> 

Dies wird das Kontrollkästchen wie in gefüllt laden, wenn die Datenbank sagt, es ist.

+0

Wenn Sie XHTML-Stil verwenden, sollte auch "checked =" checked "' –

Verwandte Themen