我有一个下拉列表,列出了表格中的类别名称,例如books表格或项目表格。每个类别都有一个特殊的表单,用于将其存储到数据库中,当然每个类别都有不同 我需要从下拉列表中获取所选名称并在其自身下创建模型表单。
答案 0 :(得分:0)
这只是我的代码,列出了猫的
<?php
$dataCategory=ArrayHelper::map(Category::find()->all(), 'id', 'name');
echo $form->field($model, 'type')->dropDownList($dataCategory,
['prompt'=>'لطفا یک گروه را انتخاب نمائید']);
?>
此代码用于从数据库中获取sub_category
<?php
$script=<<< JS
$('#cat').change(function(){
var cat_id = $(this).val();
$.get('index.php?r=site/getsubcat',{cat_id:cat_id},function(data){
if(data != "no sub_category exist for this category!")
{
$('#sub_cat').fadeIn(500);
$('#sub_cat').html(data);
}
else
{
$('#sub_cat').fadeOut(500);
$('#sub_cat').html('');
}
});
});
$('#sub_cat').change(function(){
alert($(this).val());
});
JS;
$this->registerJs($script);
?>
这是我的控制器
public function actionGetsubgroup($cat_id)
{
$subcat = SubCategory::find()
->where(['cat_id' => $cat_id])
->all();
if(!empty($subcat)) {
foreach ($subcat as $sub_category) {
echo "<option value='$cat->id'>$cat->name</option>";
}
}
else {
echo "no sub_category exist for this category!";
}
}