нужно при событии onchange в марке, надо сделать запрос к серверу и получить по id марки, список моделей
и сделать из него такой же массив ключ => значение
Вот исходник, что нужно доработать?
<?php echo $form->dropDownListRow($model, 'group_id', ItemForm::modelList(6, 8), array('empty' => 'Выбор модели', 'class' => 'input-medium')); ?>
<?php echo $form->dropDownListRow($model, 'brand', CHtml::listData(MarkModel::model()->findAllByAttributes(array('parent' => 0)), 'id', 'name'), array('empty' => 'Марка', 'label' => false,
'onchange' => CHtml::ajax(
array('type'=>'POST',
'url'=>Yii::app()->createUrl('item/getmodels', array('object' => 'ItemRequest')),
'data' => array('mark' => 'js:$(this).val()'),
'loading' => "js:$('#models').html('<select disabled=\"disabled\"><option>".Yii::t('app', 'Загрузка')."...</option></select>')",
'clearchild' =>"js:$('#models').html('')",
'update'=> '#models')
),
));
?>
<?php if (isset($model->model) && !empty($model->model)):?>
<div id="models">
<?php echo $form->dropDownListRow($model, 'parent', CHtml::listData(MarkModel::model()->findAllByAttributes(array('parent' => $model->mark)), 'id', 'name'),array('empty' => 'Модель', 'label' => false));?>
</div>
<?php else:?>
<div id="models">
<?php echo $form->dropDownListRow($model, 'model', array(),array('empty' => 'Модель', 'label' => false));?>
</div>
<?php endif;?>
<?php echo $form->textFieldRow($model, 'price[2]', array('class' => 'input-small')); ?>
<?php echo $form->textFieldRow($model, 'run[2]', array('class' => 'input-small')); ?>
<?php echo $form->dropDownListRow($model, 'engine_key', ItemForm::getEngine_key(), array('empty' => '', 'class' => 'input-large')); ?>
<?php echo $form->textFieldRow($model, 'engine_volume[2]', array('class' => 'input-small')); ?>
<?php echo $form->dropDownListRow($model, 'client_id', ItemForm::getСlient_id(), array('class' => 'input-medium')); ?>
<?php echo $form->dropDownListRow($model, 'year[2]', ItemForm::getYear(), array('class' => 'input-small')); ?>
<?php echo $form->dropDownListRow($model, 'stime', ItemForm::getStime(), array('class' => 'input-medium')); ?>
<?php echo $form->dropDownListRow($model, 'custom_key', ItemForm::getСustom_key(), array('empty' => '', 'class' => 'input-medium')); ?>
</div>
<br>
<div class="form-actions" style='margin-top: 420px'>
<?php