0

ロード時に空のモードで複数選択ウィジェットの左側のリストを作成できません。null左のリストに値を設定するとエラーが表示されます。これは私のコードです:

  $this->widget('ext.widgets.multiselects.XMultiSelects', array(
                                    'leftTitle' => '',
                                    'leftName' => 'Certificate[selected][]',
                                    'leftList' => SpecificCertification::model()->findCertificate(),// here I need to make the list empty
                                    'rightTitle' => '',
                                    'rightName' => 'Certificate[all][]',
                                    'rightList' => SpecificCertification::model()->findCertificates(),
                                    'size' => 10,
                                ));

左のリストを空にするにはどうすればよいですか?

4

1 に答える 1

0

ファイル ウィジェット XMultiSelects.php を開いて、必要に応じて変更する必要があります。

public function init()
    {
/* Comment out the below validation
        if(!isset($this->leftList))
        {
            throw new CHttpException(500,'"leftList" have to be set!');
        }
        if(!isset($this->rightList))
        {
            throw new CHttpException(500,'"rightList" have to be set!');
        }
*/
    }

以下のような leftList と rightList の検証を追加します

if($this->leftList){
            foreach($this->leftList as $value=>$label)
            {
                echo "<option value=\"{$value}\">{$label}</option>\n";
            }
        }

if($this->rightList){
        foreach($this->rightList as $value=>$label)
            {
                echo "<option value=\"{$value}\">{$label}</option>\n";
            }
        }

その後、あなたがしたようにそれらに null を設定できます

于 2013-08-06T12:00:25.447 に答える