Joomla分页不在后端工作(管理员)

时间:2013-09-05 09:31:46

标签: php joomla joomla2.5 joomla1.5

我在前端和后端都使用了相同的代码(下面),但是分页在管理端不起作用。

==================== MODEL = PART ======================== ===

defined('_JEXEC') or die;

jimport('joomla.application.component.modellist');

class CiieModelOrders extends JModelList
{
    public function getItems()

{
    // Invoke the parent getItems method to get the main list
    $items = parent::getItems();

    return $items;
}

protected function getListQuery()
{
    $db     = $this->getDbo();
    $query  = $db->getQuery(true);

    $query->select('title');
    $query->from('q2b7v_menu');

    return $query;
}

}

==================== VIEW = PART ======================== ===

defined('_JEXEC') or die;

jimport('joomla.application.component.view');

class CiieViewOrders extends JView {

protected $state;
protected $item;
protected $form;
protected $params;

public function display($tpl = null) {

    $items = $this->get('Items');
    $pagination = $this->get('Pagination');

    $this->items = $items;
    $this->pagination = $pagination;

    parent::display($tpl);
    }
}

================== TEMPLATE = PART ========================= < / p>

<?php
JHtml::_('behavior.keepalive');
JHtml::_('behavior.tooltip');
JHtml::_('behavior.formvalidation');

//Load admin language file
$lang = JFactory::getLanguage();
$lang->load('com_ciie', JPATH_ADMINISTRATOR);

?>
<div>
    <table>
    <?php
    foreach($this->items as $item){
        echo "<tr><td>".$item->title."</td></tr>";
    }
    ?>
</table>
<?php echo $this->pagination->getListFooter(); ?>
</div>

这在前端(站点侧)工作正常。 会话输出 - &gt; [orders] => stdClass Object ( [ordercol] => [limitstart] => 0 ) 链接html / url(用于下一个按钮) - &gt; <a title="Next" href="/NewJoomla/index.php/component/ciie/?view=other&amp;start=20" class="pagenav">Next</a>

我在Admin端(后端)放了相同的代码,它显示了所有的paginatiion按钮和所有内容。但按钮根本不起作用。他们简单地把我带到页面顶部。当我检查链接时(例如“下一步”按钮),我看到了:

<a href="#" title="Next" onclick="document.adminForm.limitstart.value=20; Joomla.submitform();return false;">Next</a>

(如您所见,href属性值为空(#)。)

会话输出 - &gt; [orders] => stdClass Object ( [ordercol] => ) (此处也'limitstart'值根本不存在。

我在不同的新Joomla装置中尝试了这个,但同样的问题又重复了。

我有什么遗漏的吗?

1 个答案:

答案 0 :(得分:2)

最后我把它整理出来了! 这是一个愚蠢的错误!

在模板中,我没有将列表内容放在<form>标记内。 getListFooter()函数显示分页按钮,但单击时,动作不会在任何地方提交。我更正了如下所示的代码并且有效。

========== TEMPLATE = PART ====================

...
    <div>
<form action="<?php echo JRoute::_('index.php?option=com_ciie&view=orders'); ?>" method="post" name="adminForm">
        <table>
        <?php
        foreach($this->items as $item){
            echo "<tr><td>".$item->title."</td></tr>";
        }
        ?>
    </table>
    <?php echo $this->pagination->getListFooter(); ?>
</form>
    </div>

谢谢大家。