2017-08-08 60 views
1

我想在我的项目中使用PjaxLinkPager,但它不起作用。在Yii2中为LinkPager使用Pjax

当我尝试切换到列表的第二页时,浏览器重新加载。

我用错了吗?

这是我的看法:

<?php \yii\widgets\Pjax::begin() ?> 
<!-- Book List Widgets --> 
<div id="filter-masonry" class="gallery-masonry"> 
<?php 
    if($bookModels){ 
     foreach ($bookModels as $book){ 
      $book = Product::find()->where(['id' => $book['product_id']])->one(); 

      echo $this->render('_multiViewBooks', [ 
           'book' => $book, 
           'lang' => $lang, 
           'authorPage' => $authorsPage, 
           'bookPage' => $bookPage, 
           'genrePage' => $genrePage 
           ]); 
     } 
    } 
?> 
</div> 
<?php 
    echo "<div class='pagination-holder'>"; 
    echo LinkPager::widget([ 
        'pagination' => $pagination, 
        'hideOnSinglePage' => true, 
        'prevPageLabel' => 'Prev', 
        'nextPageLabel' => 'Next' 
        ]); 
    echo "</div>"; 
?> 
<?php \yii\widgets\Pjax::end() ?> 

Pjax标签之间的一切都应该没有整个页面重载重载,是吗?

回答

3

一切都应该正常工作。也许你Pjax花了很长时间来刷新,所以它会在超时后重新加载整个页面?

试着增加超时参数

Pjax::begin(['timeout' => 5000 ]); 
Pjax部件的

,并再次检查。

+0

非常感谢你的工作! –