Hello everybody,
I have a question:
how can I do a pagination with ClinkPager using different HTML structure, like table tag instead of <ul><li></li></ul> ?
I also use Yiistrap with Yii.
Thanks
Hello everybody,
I have a question:
how can I do a pagination with ClinkPager using different HTML structure, like table tag instead of <ul><li></li></ul> ?
I also use Yiistrap with Yii.
Thanks
try to extend the CLinkPager class, e.g.:
Yii::import("system.web.widgets.pagers.CLinkPager");
class MyTablePager extends CLinkPager
{
public function run()
{
$this->registerClientScript();
$buttons = $this->createPageButtons();
if (empty($buttons))
return;
echo $this->header;
echo CHtml::tag('table', $this->htmlOptions, CHtml::tag('tr', array(), implode("\n", $buttons)));
echo $this->footer;
}
protected function createPageButton($label, $page, $class, $hidden, $selected)
{
if ($hidden || $selected)
$class .= ' ' . ($hidden ? $this->hiddenPageCssClass : $this->selectedPageCssClass);
return '<td class="' . $class . '">' . CHtml::link($label, $this->createPageUrl($page)) . '</td>';
}
public function registerClientScript()
{
if ($this->cssFile !== false)
self::registerCssFile($this->cssFile);
}
public static function registerCssFile($url = null)
{
if ($url === null)
$url = CHtml::asset('/path/to/default/tablepager.css');
Yii::app()->getClientScript()->registerCssFile($url);
}
}