2012-05-24 15 views
13

ho creato un elenco di opzioni con 2 opzioni: sì e no come qui di seguitoRadioButtonList selezionata per impostazione predefinita

<?php echo $form->radioButtonList($model,'active', array(1=>'Yes', 0=>'No'), array('separator'=>"")); ?> 

Come è possibile impostare l'opzione 1 per essere selezionata per impostazione predefinita?

risposta

25

È necessario impostare $model->active = 1 nel controller.

0

è necessario aggiungere una riga "$ modello-> attivo = 1" nella funzione del controller actionXXX(). ad esempio, se la radio si trova nella pagina di creazione, deve esserci una funzione denominata actionCreate() ed è proprio la posizione in cui si aggiunge il codice.

2

Preferisco la pagina di visualizzazione, subito prima dell'elemento del modulo. come

<?php $model->isNewRecord ? $model->active = 1: $model->active = $model->active ; ?> 

Questo si occuperà anche dell'azione di aggiornamento.

2

Si può solo impostare anche un valore di default nel Modello stesso:

Ecco un modulo in cui io uso un RadioButtonList per ReportType e hanno una selezionata per impostazione predefinita:

class FreeReportForm extends CFormModel 
{ 
    public $userId; 
    public $email; 
    public $callId; 
    public $reportType = 1; 
    public $companyNumber; 
    public $expiry; 

    ... 
} 
1

È possibile impostare il valore 1 come valore predefinito selezionato senza utilizzare $ modello anche

<?php echo $form->radioButtonList($model,'1', array(1=>'Yes', 0=>'No'), array('separator'=>"")); ?> 
Problemi correlati