YII - Add another attribute to dropDownList

2019-04-29 09:30发布

I will to add another attribute to dropDownList.

I will a dropdown list like this with Yii dropDownList:

<select name="city" id="city">
    <option value="1" test="123">one</option>
    <option value="2" test="234">two</option>
    <option value="3" test="345">three</option>
    <option value="4" test="456">four</option>
</select>

I will add test attribute to option tags.

Default Yii dropDownList is:

<?php 

echo CHtml::activeDropDownList('City', 'City', array(1 => 'one', 2 => 'two')); 

?>

How I can do this?

标签: php yii
2条回答
冷血范
2楼-- · 2019-04-29 09:56

Try :

<?php 
echo CHtml::dropDownList(
    'City',
    'City',
    array(1 => 'one', 2 => 'two'),
    array('options' => array(
        '1' => array('test' => '123'),
        '2' => array('test' => '234'),
    ))
);
?>
查看更多
贼婆χ
3楼-- · 2019-04-29 10:21

Same thing but in Yii2

echo $form->field($model, 'id_type_question')->dropDownList(
    ArrayHelper::map(
        YourModel::find()->all(), 
        'option_id', 
        'option_value'
    ), 
    [
        'options' => ArrayHelper::map($models, 
            'id', 
            function ($m) { return [ 'your_tag' => $m['your_column'] ]; }
        )
    ]
); 
查看更多
登录 后发表回答