Hello,
I have issue in pagination.
i have used CLinkPager.
My Controller.
public function actionJobList()
{
$model=new Job;
$model_jobDetail=new JobDetail;
$model->unsetAttributes(); // clear any default values
if(isset($_POST['Job']))
$model->attributes=$_POST['Job'];
$data=$model->searchJobs();
$detail=$data->getData();
$this->render('jobList',array('model'=>$model,'data'=>$data,'detail'=>$detail,'model_jobDetail'=>$model_jobDetail));
}
My View File JobList.php.
<div class="block row">
<div class="block-title clearfix">
<h2>Jobs</h2>
</div>
<div class="col-md-12">
<div class="search-form">
<!-- search-form -->
<?php $this->renderPartial('_search',array(
'model'=>$model,
)); ?>
</div>
</div>
</div>
<div id="AllJobs" class="row jobnames">
<?php
$i=0;
$k=1;
$oldDate='';
$newDate='';
foreach($detail as $value)
{
$this->beginWidget('zii.widgets.CPortlet',array(
'contentCssClass'=>false,
'decorationCssClass'=>FALSE,
));
$this->renderPartial('_jobList',array('model'=>$model,'value'=>$value,'i'=>$i,'k'=>$k,'model_jobDetail'=>$model_jobDetail));
$this->endWidget();
$i++;
} ?>
<div class="clearfix"></div>
<div class="col-sm-6"></div>
<div class="pager col-sm-6">
<?php $this->widget('SimplePager',array('pages'=>$data->pagination,'maxButtonCount'=>2,
'prevPageLabel' => '<i class="fa fa-chevron-left"></i>',
'nextPageLabel' => '<i class="fa fa-chevron-right"></i>',
'lastPageLabel' => false,
'firstPageLabel' => false,
'selectedPageCssClass' => 'active',
'hiddenPageCssClass' => 'hidden',
'header'=>'',
'id'=>'link_pager',
'idDivUpdate'=>"AllJobs",
'idForm'=>"search-form",
'htmlOptions'=>array(
'class'=>'pagination pagination-sm','style'=>'',)));
?>
</div>
</div>
Extended CLinkPager File.
class SimplePager extends CLinkPager
{
public $idDivUpdate;
/**
* @var string the id of the FORM used for criterias
*/
public $idForm;
protected function createPageButton($label,$page,$class,$hidden,$selected)
{
if($hidden || $selected)
$class.=' '.($hidden ? self::CSS_HIDDEN_PAGE : self::CSS_SELECTED_PAGE);
return '<li class="'.$class.'">'.CHtml::link($label,"#",array('encode'=>false,'onClick'=>
"jQuery.ajax({'type':'POST','url':'" . $this->createPageUrl($page) . "','cache':false,'data':jQuery('#" . $this->idForm . "').serialize(),'success':function(html){jQuery('#" . $this->idDivUpdate . "').html(html)}}); return false;"
)).'</li>';
}
}
I want ajax pagination. First page display data properly. but when i click on pagination link it doesn’t update my Data container Div. There is no change at all. i want it to update Div with Id “AllJobs”.
Any solution please?
Thanks in advance.