繁体   English   中英

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

[英]Joomla pagination is not working in back end (administrator)

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

==================== 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 =========================

<?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>

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

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

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

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

会话输出-> [orders] => stdClass Object ( [ordercol] => ) (这里的'limitstart'值根本不存在。

我也在不同的新Joomla安装中尝试过此方法,但是相同的问题再次出现。

有什么我想念的吗?

终于我整理了! 这是一个愚蠢的错误!

在模板中,我没有将列表内容放在<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>

谢谢你们。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM