yii2 Pjax的使用
yii2 2017-09-13 14:58:16

参考资料:https://github.com/defunkt/jquery-pjax

 

有两个例子:刷新时间和数据显示排序

PHP Code复制内容到剪贴板
  1. use yii\widgets\Pjax;  

 

 

1、刷新时间

(1)控制器中的方法:Time

PHP Code复制内容到剪贴板
  1. public function actionTime()    
  2. {    
  3.     return $this->render('time',['time'=>date("h:i:s")]);    
  4. }    

(2)视图中的显示:Time.php

PHP Code复制内容到剪贴板
  1. <?php    
  2. use yii\widgets\Pjax;    
  3. use yii\helpers\Html;    
  4. ?>    
  5.     
  6. <? Pjax::begin()?>    
  7. <?=Html::a('time',['hello/time'],['class'=>'btn btn-lg btn-primary'])?>    
  8. <h3>Current Time:<?=$time?></h3>    
  9. <? Pjax::end()?>  

 

pjax可以在JS中对操作作简单的弹框说明:

PHP Code复制内容到剪贴板
  1. <?  
  2. if(Yii::$app->request->isPjax){  
  3.       
  4. }  
  5. ?>  
  6.   
  7. <script>  
  8.     /* 用户pjax签到 */  
  9.     var container = $("#container-sign");   //签到列表容器  
  10.     container.on('pjax:beforeSend',function(args){  
  11.         // alert("请求之前中断一下");  
  12.     });  
  13.     container.on('pjax:error',function(args){  
  14.         layer.msg("签到失败");  
  15.     });  
  16.     container.on('pjax:success',function(args){  
  17.         layer.msg("签到成功");  
  18.     });  
  19. </script>  

 

 

2、数据显示的排序:

只需要在GridView显示的地方加上Pjax即可:

PHP Code复制内容到剪贴板
  1. <?Pjax::begin();?>    
  2. <?echo GridView::widget([    
  3.     'dataProvider' => $dataProvider,    
  4.     'filterModel' => $searchModel,    
  5.     'columns' => [    
  6.         ['class' => 'yii\grid\CheckboxColumn'],    
  7.         'id',    
  8.         'name',    
  9.         'password',    
  10.         ['class' => 'yii\grid\ActionColumn',    
  11.         ],    
  12.     ],    
  13. ]); ?>    
  14. <?Pjax::end();?>  

 

本文来自于:http://www.yoyo88.cn/study/yii2/147.html

上一篇 demo
Powered by yoyo苏ICP备15045725号