如何添加静态元素到yii下拉列表


echo $form->dropDownList(
              $model,'categoryId', 
                      CHtml::listData(Category::model()->findAllBySql(
                      'SELECT * from category where isnull(parent_id)'), 
                      'id', 'name'), 
                      array(
                            'empty'=>Yii::t('fim','Search All'),
                             Yii::t('fim','Jobs'), 
                             Yii::t('fim','Training'), 
                             Yii::t('fim','Events'), 
                             Yii::t('fim','News')
                      )
            );

工作,培训,活动和新闻没有出现。

我们应该如何构建这个,以便将这些值添加到选择框中?

谢谢

不能使用$htmlOptions参数添加静态元素。我是这样做的:

$data = CHtml::listData(Category::model()->findAllBySql(
                        'SELECT * from category where isnull(parent_id)'), 
                        'id', 'name');
// Add extra options here: I am actually prepending with this syntax,
// but you are free to append or interleave instead. Array keys are the values.
$static = array(
    'jobs'     => Yii::t('fim','Jobs'), 
    'training' => Yii::t('fim','Training'), 
    'events'   => Yii::t('fim','Events'), 
    'news'     => Yii::t('fim','News'),
);
echo $form->dropDownList(
    $model,
    'categoryId',
    $static + $data,
    array('empty'=>Yii::t('fim','Search All')));

对于我来说,我所做的是我添加了jquery代码,我附加了一个html选项

    $("#categoryId").append("<option value='0'>Additional Field</option>");

它不那么复杂,对我来说很好用

最新更新