2012-07-02 12 views
8

Ho un multiple select-list-box per Staff in Create-Service-Form, utilizzato per selezionare più personale durante la creazione di un nuovo servizio. per questo posso assegnare più personale su un singolo servizio.Come caricare gli elementi dell'elenco selezionati nella casella di riepilogo a selezione multipla nella vista di aggiornamento in yii?


I salvato staff_id campo come:
$model->staff_id = serialize($model->staff_id);


Qui il codice update-view per multiple-select-list-box:

<div class="row"> 
    <?php echo $form->labelEx($model,'staff_id'); ?> 
    <?php 
      $data = array('1' => 'Sam', '2' => 'john', '3' => 'addy'); 
      $htmlOptions = array('size' => '5', 'prompt'=>'Use CTRL to Select Multiple Staff', 'multiple' => 'multiple'); 
      echo $form->ListBox($model,'staff_id', $data, $htmlOptions); 
    ?> 
    <?php echo $form->error($model,'staff_id'); ?> 
</div> 

problema è che, quando carico modulo per l'aggiornamento di un servizio. come faccio a selezionare quei dipendenti, che sono stati precedentemente salvati nel database?

Ho provato this dropDownList-attributes, ma non funziona.
$ select | stringa | il valore selezionato

se qualcuno ha una soluzione, quindi suggerire me. Grazie a tutti gli amici ...

risposta

12

Ecco un codice rapido che ho scritto per te, è un esempio che ti aiuterà a capire come funziona.

<div class="row"> 
    <?php echo $form->labelEx($model,'staff_id'); ?> 
    <?php 
    $data = array('101' => 'Faraz Khan', '102' => 'Depesh Saini', '103' => 'Nalin Gehlot', '104' => 'Hari Maliya'); 
    $selected = array(
     '102' => array('selected' => 'selected'), 
     '103' => array('selected' => 'selected'), 
    ); 
    $htmlOptions = array('size' => '5', 'prompt'=>'Use CTRL to Select Multiple Staff', 'multiple' => 'true', 'options' => $selected); 
    echo $form->listBox($model,'staff_id', $data, $htmlOptions); 
    ?> 
    <?php echo $form->error($model,'staff_id'); ?> 
</div> 

Buon divertimento Ya !!!

+0

Thatz il perfetto ansiere, grazie a voi amico ... – Frank

+0

Qualsiasi metodo semplice per farlo con i valori dal database. Per lo più master-detail. – Vijay

+0

Non funziona ... nessun valore è preselezionato ... –