>  기사  >  백엔드 개발  >  YII 프레임워크에서 검색 페이지 매기기 jQuery를 작성하는 방법에 대해

YII 프레임워크에서 검색 페이지 매기기 jQuery를 작성하는 방법에 대해

不言
不言원래의
2018-06-15 16:27:221536검색

이 글은 YII 프레임워크에서 검색 페이징을 위한 jQuery 작성 방법에 대한 자세한 설명을 중심으로 관련 정보를 소개합니다. 매우 훌륭하고 참고할 가치가 있어야 합니다. 원하는 친구는 참고할 수 있습니다.

컨트롤 레이어

use frontend\models\StudUser;
use yii\data\Pagination;
use yii\db\Query;
/**
 * 查询
 *
 */
public function actionSearch()
{
  //接值
  $where=Yii::$app->request->get();
  //实例化query
  $query=new Query();
  $query->from('stud_user');
  //判断
  if(isset($where['sex'])&&$where['sex']!=''){
    //判断
    if($where['sex']=='男'){
      $query->andWhere(['stud_sex'=>0]);
    }
    if($where['sex']=='女'){
      $query->andWhere(['stud_sex'=>1]);
    }
  }else{
 $where['sex']='';
}
  //年龄
  if(isset($where['age'])&&$where['age']!=''){
     $query->andWhere(['>','stud_age',$where['age']]);
  }else{
$where['age']='';
}
  //分页
  $pagination = new Pagination(['totalCount' => $query->count()]);
  //条数
  $pagination->setPageSize('3');
  //条件
  $query->offset($pagination->offset)->limit($pagination->limit);
  //执行
  $userInfo=$query->all();
  //print_r($userInfo);die;
  return $this->render('search',['userInfo'=>$userInfo,'page'=>$pagination,'where'=>$where]);
}

모델 레이어

<?php
namespace frontend\models;
use Yii;
use yii\db\ActiveRecord;
class StudUser extends ActiveRecord
{
  /**
   * 声明表名
   *
   */
   public static function tableName()
   {
     return &#39;{{%stud_user}}&#39;;
   }
  /**
   * 验证规则
   *
   */
  public function rules()
  {
    return [
      [&#39;stud_age&#39;,&#39;integer&#39;],
    ];
  }
}

View 레이어

<?php
use yii\widgets\ActiveForm;
use yii\helpers\Url;
use yii\helpers\Html;
use yii\widgets\LinkPager;
?>
<?php
$form=ActiveForm::begin([
  &#39;action&#39;=>Url::toRoute([&#39;admin/search&#39;]),
  &#39;method&#39;=>&#39;get&#39;,
]);
echo &#39;性别&#39;,"&nbsp",Html::input(&#39;text&#39;,&#39;sex&#39;,$where[&#39;sex&#39;]);
echo &#39;年龄&#39;,"&nbsp",Html::input(&#39;text&#39;,&#39;age&#39;,$where[&#39;age&#39;]);
echo Html::submitButton(&#39;提交&#39;);
ActiveForm::end();
?>
<table class="table">
<tr>
  <td>序号</td>
  <td>姓名</td>
  <td>年龄</td>
</tr>
  <?php foreach($userInfo as $val):?>
    <tr>
      <td><?= $val[&#39;stud_id&#39;]?></td>
      <td><?= $val[&#39;stud_name&#39;]?></td>
      <td><?= $val[&#39;stud_age&#39;]?></td>
    </tr>
  <?php endforeach;?>
</table>
<?php
echo LinkPager::widget([
  &#39;pagination&#39; => $page,
  &#39;nextPageLabel&#39;=>&#39;下一页&#39;
 ]);?>

페이지 매김 스타일은

LinkPager.php에 있습니다.

위 내용은 이 글의 전체 내용이며, 모든 분들의 학습에 도움이 되기를 바랍니다. 관련 내용은 PHP 중국어 홈페이지를 주목해주세요!

관련 권장 사항:

방문자와 사용자에 대한 Yii2의 예방 규칙 및 제한 사항을 해결하는 방법

CLinkPager를 사용한 Yii 페이징

위 내용은 YII 프레임워크에서 검색 페이지 매기기 jQuery를 작성하는 방법에 대해의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.