Chalist
Chalist

Reputation: 3309

YII - Add another attribute to dropDownList

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?

Upvotes: 6

Views: 3739

Answers (2)

MoVod
MoVod

Reputation: 1121

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'] ]; }
        )
    ]
); 

Upvotes: 1

Ororuk
Ororuk

Reputation: 461

Try :

<?php 
echo CHtml::dropDownList(
    'City',
    'City',
    array(1 => 'one', 2 => 'two'),
    array('options' => array(
        '1' => array('test' => '123'),
        '2' => array('test' => '234'),
    ))
);
?>

Upvotes: 12

Related Questions