为了账号安全,请及时绑定邮箱和手机立即绑定

带分页的 Cactivedataprovider

带分页的 Cactivedataprovider

PHP
慕仙森 2021-09-18 10:44:46
首先,这里表中有更多的记录,所以我们要在页面中添加分页,代码如下    public function actionCompany()        {              $model = new CompanyProfile();              $criteria1 = new CDbCriteria();            $criteria1->addCondition('cmpny_profile_id=-1');            $dataProvidernew= new CActiveDataProvider('CompanyProfile',array(                'criteria'=>$criteria1,'pagination'=>array('pageSize'=>10),        ));       if(isset($_POST['CompanyProfile'])){                $criteria = new CDbCriteria();                $model->cmpny_profile_name = $_POST['CompanyProfile']['cmpny_profile_name'];                if(!empty($model->cmpny_profile_name))                {        $criteria->addSearchCondition('cmpny_profile_name', $model->cmpny_profile_name);                }      $dataProvidernew= new CActiveDataProvider('CompanyProfile',array(                    'criteria'=>$criteria,'pagination'=>array('pageSize'=>10),                ));            }        $this->render('company',array('model'=>$model,'dataProvider'=>$dataProvidernew));    }现在,在加载页面时,不会显示任何记录,我们有一个表单要在页面中提交。所以在提交表单时,代码显示前 10 条记录。当我们点击分页的第二个链接时,不会显示任何记录。我的问题是,在单击分页的第二个链接时,表单正在提交但值为$model->cmpny_profile_name空,因此代码必须显示 10 条记录但不显示单条记录,为什么?请告诉我们原因。提前致谢。
查看完整描述

1 回答

?
慕娘9325324

TA贡献1783条经验 获得超4个赞

首先,带分页的 Cactivedataprovider 不加载页面,分页与 ajax 一起工作。所以如果你在 if 条件中回显代码,你可以通过 ajax 检查没有数据将显示。所以点击分页的第二个链接,分页将是同一页面加载 ajax 并应用cmpny_profile_id=-1条件,并且没有提交任何表单,因此不会显示任何数据。


查看完整回答
反对 回复 2021-09-18
  • 1 回答
  • 0 关注
  • 202 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信