Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Drop down menu 如何在重新加载页面后保留并显示dropdownList中的选定值,直到用户再次更改它?(Yii2)_Drop Down Menu_Yii2 - Fatal编程技术网

Drop down menu 如何在重新加载页面后保留并显示dropdownList中的选定值,直到用户再次更改它?(Yii2)

Drop down menu 如何在重新加载页面后保留并显示dropdownList中的选定值,直到用户再次更改它?(Yii2),drop-down-menu,yii2,Drop Down Menu,Yii2,我花了两周的时间在这个问题上,但无法解决它。请帮助我。提前谢谢你。 我的意思是不会更改所选的筛选器搜索。 在我看来 <?php $searchModel = new AgahiSearch();?> <?php $form = ActiveForm::begin([ 'action'=>['site/search'], 'method'=>'get',

我花了两周的时间在这个问题上,但无法解决它。请帮助我。提前谢谢你。 我的意思是不会更改所选的筛选器搜索。 在我看来

    <?php $searchModel = new AgahiSearch();?>
            <?php $form = ActiveForm::begin([
                'action'=>['site/search'],
                'method'=>'get',
                'options' => ['data-pjax' => true ]
            ]);?>
<?php $catobject = new Category();?>
                    <?php $a = ArrayHelper::map(Category::find()->where(['parent_id'=>'y'])->All(),'id','name');?>
                    <?= $form->field($catobject, 'parent_id')->dropDownList($a, [
                        'id'=>'cat-id',
                        'prompt'=>' select your group ',
                        'options' =>['data-pjax' => true ]

                    ]);?>
模型中

public function search($params)
    {
        $query = Agahi::find();
        $dataProvider = new ActiveDataProvider([
            'query' => $query
        ]);
        if (!($this->load($params) && $this->validate())) {
            return $dataProvider;
        }

        $query->andfilterWhere(['like','title', $this->title])
        ->andFilterWhere(['in','type_id',$this->type_id])
        ->andFilterWhere(['in','cat_id',$this->cat_id]);

        return $dataProvider;
    }

根据我的理解,您必须在视图窗体中使用Agahi模型对象。您正在使用Catgeory对象。 表单的用户$searchModel对象

像这样更改视图文件

        <?php $form = ActiveForm::begin([
            'action'=>['site/search'],
            'method'=>'get',
            'options' => ['data-pjax' => true ]
        ]);?>
                <?php $a = ArrayHelper::map(Category::find()->where(['parent_id'=>'y'])->All(),'id','name');?>
                <?= $form->field($searchModel, 'cat_id')->dropDownList($a, [
                    'prompt'=>' select your group ',
                    'options' =>['data-pjax' => true ]

                ]);?>
        <?php $form = ActiveForm::begin([
            'action'=>['site/search'],
            'method'=>'get',
            'options' => ['data-pjax' => true ]
        ]);?>
                <?php $a = ArrayHelper::map(Category::find()->where(['parent_id'=>'y'])->All(),'id','name');?>
                <?= $form->field($searchModel, 'cat_id')->dropDownList($a, [
                    'prompt'=>' select your group ',
                    'options' =>['data-pjax' => true ]

                ]);?>
 public function actionSearch()
    {
        $searchModel = new AgahiSearch();
        $dataProvider = $searchModel->search(Yii::$app->request->queryParams);
        $modelCatsite= Category::find()->where(['parent_id'=>'y'])->All();

        return $this->render('index', [
            'searchModel' => $searchModel,
            'modelCatsite' => $modelCatsite,
            'dataProvider' => $dataProvider,


        ]);
    }