设为首页 收藏本站
查看: 805|回复: 0

[经验分享] PHP、Smarty与jQuery Ajax 分页插件jquery.pager.js的使用

[复制链接]

尚未签到

发表于 2015-8-26 07:50:04 | 显示全部楼层 |阅读模式
  1.首先建立一个PHP文件,用于查询数据:
  (具体查询数据及显示可以根据需要修改,本例中使用了一个Dept表,有两个字段:DeptCode和DeptName,处理结果集的方式也可以根据自己使用的数据访问方式来修改。)

  <?php
    include_once("./class.config.php");
    include_once("./class.login.php");
    include_once("include/BaseFunction.php");  
  $PerPageCount=2;
    //如果传递了pager参数
    if(isset($_POST['pager']) && isset($_POST['count']))
    {
        echo GetDeptpager($_POST['count'],$_POST['pager']);
    }
    else
    {
        $rs= $db->SelectSQL("select count(*) as cc from dept");
        if($r=$db->Fetch($rs))
        {
            $reccount=$r['cc'];
        }
        $totalpagecount=ceil($reccount/$PerPageCount);
        //显示第一页数据
        $FirstContent=GetDeptPager($PerPageCount,1);
        $Smarty->assign("totalpagecount",$totalpagecount);
        $Smarty->assign("PerPageCount",$PerPageCount);
        $Smarty->assign("FirstContent",$FirstContent);
        $Smarty->display("DeptPager.html");
    }
    function GetDeptPager($count,$pager)
    {
        global $db;
        global $PerPageCount;
        $rs= $db->SelectSQL("select * from dept limit ".($pager-1)*$PerPageCount.",".$PerPageCount);
        while ($r=$db->Fetch($rs))
        {
            $temp[]=$r;
        }
        if(!isset($temp))
        {
            return "不会吧?没有查询到任何结果!";
        }
        $s="<table border=1>";
        $s.="<tr><th>部门编码</th><th>部门名称</th></tr>";
        foreach($temp as $k=>$v)
        {
            $s.='<tr><td>'.$v['DeptCode'].'</td><td>'.$v['DeptName'].'</td></tr>';   
        }
        $s.="</table>";
        $s='每页记录数:'.$count.'当前页码:'.$pager.$s;
        return $s;
    }
?>   
  
  2.引入js:

  <link href="../CSS/Pager.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="../Library/jquery1.3.1/dist/jquery.js"></script>
<script type="text/javascript" src="../Library/jquery1.3.1/jquery.pager.js"></script>
  其中,pager.css参考样式为:
  #pager ul.pages {
display:block;
border:none;
text-transform:uppercase;
font-size:10px;
margin:10px 0 50px;
padding:0;
}  
  #pager ul.pages li {
list-style:none;
float:left;
border:1px solid #ccc;
text-decoration:none;
margin:0 5px 0 0;
padding:5px;
}  
  #pager ul.pages li:hover {
border:1px solid #003f7e;
}  
  #pager ul.pages li.pgEmpty {
    border:1px solid #eee;
    color:#03F;
}  
  #pager ul.pages li.pgCurrent {
    border:1px solid #003f7e;
    color:#000;
    font-weight:700;
    background-color:#FF9;
}   
  
  3.在页面中定义脚本

  <script type="text/javascript" language="javascript">  
  var TotalPageCount=2;
var PerPageCount=10;  
  $(document).ready(function(){
   TotalPageCount=document.getElementById('totalpagecount').value;   
   $("#pager").pager({ pagenumber: PerPageCount, pagecount: TotalPageCount, buttonClickCallback: PageClick });
});
function CreateQueryString(pageclickednumber)
{
    var querystr="pager="+pageclickednumber+"&count="+PerPageCount;
    return querystr;
}  
  function TestClick(pageclickednumber)
{
    $.ajax({
           type:"POST",
           url:"../DeptPager.php",
           data:CreateQueryString(pageclickednumber),
           success:function(data){
                           $("#input").html(data);
           }
           });  
  }
PageClick = function(pageclickednumber)
{
        TestClick(pageclickednumber);
        $("#pager").pager({ pagenumber: pageclickednumber,
                    pagecount: TotalPageCount, buttonClickCallback: PageClick });
}  
  </script>   
  4.页面中需要保留的区域:
  <div id="input"><{$FirstContent}></div>
<input type="hidden" id="totalpagecount" value="<{$totalpagecount}>" />
<input type="hidden" id="perpagecount" value="<{$perpagecount}>" />
<div id="pager" ></div>

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-104218-1-1.html 上篇帖子: PHP获取当前类名、函数名、方法名 下篇帖子: PHP配置FCKEditor
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表