2012-07-02 11 views
8

Tengo multiple select-list-box para Staff en Create-Service-Form, que se utiliza para seleccionar varias personas al crear un nuevo servicio. para esto puedo asignar personal múltiple en un solo servicio.¿Cómo cargar los elementos seleccionados de la lista en el cuadro de selección múltiple en la vista de actualización en yii?


AHORRÉ staff_id campo como:
$model->staff_id = serialize($model->staff_id);


Aquí el actualización en vista de código de múltiples-select-cuadro de lista:

<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> 

El problema es que cuando la carga formulario para actualizar un servicio ¿Cómo selecciono esos empleados, que se guardan previamente en la base de datos?

Probé this dropDownList-attributes, pero no funcionaba.
$ select | cadena | el valor seleccionado

si alguien tiene una solución, entonces sugiérame. Gracias All Mates ...

Respuesta

12

Aquí hay un código rápido que escribí para ti, es un ejemplo que te ayudará a entender cómo funciona.

<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> 

Have Fun Ya !!!

+0

Thatz el guante perfecto, gracias a usted compañero ... – Frank

+0

Cualquier método simple para hacerlo con los valores de la base de datos. Mayormente detalles maestros. – Vijay

+0

No funciona ... no hay valores preseleccionados ... –

Cuestiones relacionadas