8

新しいサービスを作成するときに複数のスタッフを選択するために使用されるfor multiple select-list-boxinStaffがあります。Create-Service-Formこのため、1 つのサービスに複数のスタッフを割り当てることができます。


staff_idフィールドを次のよう に保存しました:
$model->staff_id = serialize($model->staff_id);


複数選択リスト ボックスの更新ビューコードは次のとおりです。

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

問題は、サービスを更新するためのフォームをロードするときです。以前にデータベースに保存されたスタッフを選択するにはどうすればよいですか?

このdropDownList-attributesを試しましたが、うまくいきません。
$select | 文字列 | 選択した値

誰かが解決策を持っている場合は、私に提案してください。ありがとうすべての仲間...

4

1 に答える 1

12

これは、私があなたのために書いた簡単なコードです。これは、それがどのように機能するかを理解するのに役立つ例です。

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

楽しんでね!!!

于 2012-07-03T06:33:30.850 に答える