2012-03-28 7 views
0

Wie kann ich den ausgewählten Wert für eine Dropdownliste nach der Formularübergabe in CakePHP beibehalten?CakePHP - ausgewählten Wert für die Dropdownliste nach dem Senden beibehalten

Wenn mehr Informationen (oder ein Code) benötigt wird, sagen Sie mir bitte.

UPDATE

Hier ist ein Teil des Codes aus meiner Sicht:

echo $this->Form->create('Chart'); 
echo $this->Form->input('username', 
     array('label'=>('Usernames List'), 
     'default'=>('Select username'), 
     'options'=>$usernames, 'selected'=>false)); 
echo $this->Form->end('Create Chart'); 

Also, wenn ich drücke ‚Create Chart‘, die nicht den Benutzernamen Dropdownlist nicht halten, die ich ausgewählt habe, aber es geht auf den ersten zurück.

+0

Normalerweise wird es automatisch. Bitte fügen Sie etwas Code hinzu. –

+0

Danke, Code hinzugefügt! – myrmix

+0

Warum benutzen Sie ''ausgewählt' => false'? –

Antwort

0

Der Formular-Helper verwendet die in $this->data gespeicherten Daten zum Auffüllen von Feldern. Stellen Sie sicher, dass beim Senden des Formulars in der Ansicht, die anschließend gerendert wird, die entsprechenden Modell-/Schlüsseldaten in $this->data gespeichert sind, damit der Formularhelfer die entsprechenden Werte korrekt eingibt.

Können wir Ihre Controller-Aktion möglicherweise sehen? Das kann helfen, eine genauere Schlussfolgerung zu ziehen.

+0

Danke für die Info, in meinem Fall war es nur, dass ich die Eigenschaft 'ausgewählt', weil ich seine Verwendung missverstanden habe. – myrmix

0

Sie sollten nie die Ansicht verwenden, um Standardwerte oder Werte festzulegen (besonders ausgewählt/Wert ist falsch, da es - wie Ihr Code - die Idee von persistenten Formularen zerstört).

Verwendung der Controller statt

@see http://www.dereuromark.de/2010/06/23/working-with-forms/ (Standardwerte)

+0

Danke, ich werde es ändern – myrmix

0

addierte Wert in Dropdown wie folgt aus:

<?php echo $this->form->select('Schedule.showsid', array('0'=>'title', '1'=>'description'));?>