首先,这里表中有更多的记录,所以我们要在页面中添加分页,代码如下 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
条件,并且没有提交任何表单,因此不会显示任何数据。
- 1 回答
- 0 关注
- 202 浏览
添加回答
举报
0/150
提交
取消