Hi!
How to safe attributes in dependent dropdownlist, after validate it doesn’t safe.
<div class="col-sm-3">
<?php echo $form->dropDownList($category, 'category_id',
CHtml::listData(Category::model()->findAll(array(
'condition' => 'parent IS NULL', 'order'=>'id')), 'id', 'title_ru'),
array(
'class'=>'form-control',
'size'=>'12',
'onchange'=> CHtml::ajax(
array(
'type'=>'POST',
'dataType'=>'json',
'url'=>CController::createUrl('ajax/getListSubCategory'),
'data' => array('cat' => 'js:$(this).val()'),
'update'=> '#Category_sub_category_id',
'success'=>"function(data){
$('#Category_sub_category_id').html(data.data1);
$('#hiddencategory1').show();
}",
'beforeSend'=>"function(data){
$('#hiddencategory1').hide();
$('#hiddencategory2').hide();
$('#hiddencategory1').addClass('loading');
}",
'complete' => "function(data)
{
$('#categoryLoading').removeClass('loading');
}",
)
),
));
?>
</div>
<div id="hiddencategory1" style="display:none;">
<div class="col-sm-3">
<?php echo $form->dropDownList($category, 'sub_category_id', array(),array(
'class'=>'form-control',
'size'=>'12',
'onchange'=> CHtml::ajax(
array(
'type'=>'POST',
'dataType'=>'json',
'url'=>CController::createUrl('ajax/getListSubCategory'),
'data' => array('cat' => 'js:$(this).val()'),
'update'=> '#Category_extra_category_id',
'success'=>"function(data){
$('#Category_extra_category_id').html(data.data1);
$('#hiddencategory2').show();
}",
'beforeSend'=>"function(){
$('#hiddencategory2').hide();
}",
)
)
)); ?>
</div>
</div>
<div id="hiddencategory2" style="display:none;">
<div class="col-sm-3">
<?php echo $form->dropDownList($category, 'extra_category_id', array(),array(
'class'=>'form-control',
'size'=>'12',
'onchange'=> CHtml::ajax(
array(
'type'=>'POST',
'dataType'=>'json',
'url'=>CController::createUrl('ajax/getListSubCategory'),
'data' => array('cat' => 'js:$(this).val()'),
'update'=> '#params',
'success'=>"function(data){
$('#params').html(data.data3);
}",
'beforeSend'=>"function(){
}",
)
)
)
); ?>
</div>
</div>
My model rule
array('category_id','required'),
array('category_id,sub_category_id,extra_category_id','safe'),