是否可以对下一个和上一个链接进行分页以在特定 div 处加载页面

is it possible to paginate next and previous links to load page at a specific div

把问题弄清楚,让我把问题说清楚;我需要实现的是我有一个页面,其中分页正在进行 - 工作并且每当我对页面进行分页时,页面都会转到页面顶部,因为它确实刷新但我需要它停留在 div 分页 link 所在的位置。分页内容所在的内容区域,可能看起来页面没有加载,只有内容被更新了。 明白这一点。

代码如下:

<div class="large-12 columns" id="paginate" style="border-right: 1px solid #E3E5E8; height: 572px;">
    <article>
        <hr><div class="row">
            <div class="large-6 columns">
        <?php
        //stories complete do not edit. 
            foreach($stories as $story){

                echo '
                <p>'.$this->Html->image($story['image'].'.jpg', ['alt'=>'image for article']).'</p>
                </div>
                <div class="large-6 columns">
                <h5><a href="#">'.$story['title'].'</a></h5>
                <p>
                <span><i class="fi-torso"> Creator: '.$story['creator'].' &nbsp;&nbsp;</i></span>
                <span><i class="fi-calendar"> '.$story['created'].' &nbsp;&nbsp;</i></span>

                </p>
                <p>'.$story['story'].'</p>';

                //same place after pagination
                //
            }

        ?>

            </div>

                <div style="padding: 2px;float: left;margin-top: 31%;margin-left: -1206px;">
                    <ul class="pagination" role="navigation" aria-label="Pagination">
                        <li><?php echo $this->Paginator->prev(' < ' . __(''));?></li>
                        <li><?php echo $this->Paginator->numbers();?></li>
                        <li><?php echo $this->Paginator->next(' > ' . __(''));?></li>
                    </ul>
                </div>
            </div><hr>

        </article>
    </div>

根据代码和早期的 Cakephp 代码,我们能够使用分页器将 link 添加到 div,它会直接将我们带到特定的 div,我可以'不知道用 cakephp-4.x 来做的语法,所以请善待并用最少的代码给出你最好的解决方案。

我找到了解决问题的方法。这比人们可以从互联网上的任何地方找到的任何其他解决方案都更具建设性。我将描述代码并放置代码片段,这样每个人和任何人都可以通过阅读我的代码片段来做到这一点。

首先为特定模型声明分页。在 Initialise Paginator 代码片段之后。完成上述操作后,将分页器加载并查询给定模型。 之后设置变量和紧凑。

在模板端确保您已遵循上述过程,所有给定的代码将在控制器端分配并自动在模板端工作。我将模板代码放在片段底部,请仔细阅读并在控制器和模板之间有请求和响应的任何地方实施您的代码。

将以下代码放入控制器:

    public $paginate = [

        'Stories' => ['scope' => 'story',
                      'limit' => 1,
                      ]
    ];


    public function initialize(): void
    {
        parent::initialize();
        $this->loadComponent('Paginator');
    }

    public function index()
    {

        // Paginate property
        $this->loadComponent('Paginator');

        $stories = $this->paginate($this->Stories->find('all', ['scope' => 'story']));
        $this->set(compact('employers'));
    }

以下模板代码:

<div class="column" id="success_story">
    <hr>
    <h4 style="margin: 0;" class="text-center">SUCCESS STORIES</h4>
    <hr>
</div>

<?php
  //stories complete do not edit. 
  foreach($stories as $story){

    echo '
    <p>'.$this->Html->image($story['image'].'.jpg', ['alt'=>'image for article']).'</p>
    </div>
    <div class="large-6 columns">
    <h5><a href="#">'.$story['title'].'</a></h5>
    <p>
    <span><i class="fi-torso"> Creator: '.$story['creator'].' &nbsp;&nbsp;</i></span>
    <span><i class="fi-calendar"> '.$story['created'].' &nbsp;&nbsp;</i></span>

    </p>
    <p>'.$story['story'].'</p>
    ';
  }
?>

<div style="padding:0px;margin:0px;margin-bottom: -35px;">
  <ul class="pagination" role="navigation" aria-label="Pagination">
    <li><?php echo $this->Paginator->prev(' < ' . __(''));?></li>
    <li><?php echo $this->Paginator->next(' > ' . __(''));?></li>
  </ul>
</div>

将 link 放入 success_story(div) 作为 #(指标)