BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / www-technology / #20684同步于 2013/7/5
该镜像源已超过 30 天没有更新,可能在源站已被删除。
WWWTechnology机器人发帖

JS写一个分页显示的代码,求大神!!

lc10210103
2013/7/5镜像同步12 回复
{template "content","header"} <div class="header"> <div class="logo ks-clear"> <div class="lg_left"> {pc:block pos="hk_gzs_logo"}{/pc} <span>{$SEO['site_title']}</span> </div> {pc:block pos="title_logo"}{/pc} </div> {template "content","header_nav"} <div class="Mbx_crumb"> <span>你的位置:</span> <span> <a href="{siteurl($siteid)}">{$SEO['site_title']}</a><span> > {catpos($catid)}</div> {pc:content action="lists" catid="$catid" num="25" order="id DESC" page="$page"}</span> </div> </div> </div> <div id="content"> <div class="layout"> <div class="col-main"> <div class="gzs_list_box"> <div class="gzs_list_box_top"> <h2 style="">工作室列表</h2> <p> 共<strong id="total"></strong>个工作室 </p> </div> <div class="gzs_list_box_main ks-clear" id="gzs_list_box_main"> </div> <div class="main_list" id="main_list" style="display:block"><img src="http://s4.jsyxw.cn/res/sq/images/loading16.gif" style="display:inline;" />读取中...</div> <div id="pages"></div> </div> </div> </div> </div> <script type="text/javascript"> common.ready(function(){common.getPlugin(['http://s1.jsyxw.cn/res/web/2.0/js/plugins/r/pushstream.js','http://s1.jsyxw.cn/res/web/2.0/js/plugins/r/r.js','http://s1.jsyxw.cn/res/web/2.0/js/plugins/r/r.css'],{},function(){ruiyun._do(window);});}); var clubid = 10102,pageindex= 1,pagesize=25; var total = 0; common.ready(function(){ document.domain = 'yanxiu.com'; loaddata(); }); function loaddata(){ common.iframeAjax({ domain:'q.yanxiu.com', method:'POST', url:'http://q.yanxiu.com/club/rj.tc', data:{ clubid:clubid, page:pageindex, limit:pagesize }, success:function(datas){ common.iframeAjax({ domain:'q.yanxiu.com', method:'POST', url:'http://q.yanxiu.com/club/rj.tc', data:{ clubid:clubid, page:pageindex, limit:1 }, success:function(datas){ datas = common.parseJson(datas); if(datas.code != 0){ alert(datas.desc); return; } window.total = datas.result.total; common.idN('total').innerHTML = window.total; }, failure:function(){ alert("false"); } }); datas = common.parseJson(datas); if(datas.code != 0){ alert(datas.desc); return; } var d = datas.result.rooms; document.getElementById('main_list').style.display = 'none'; if(d==null||d==''){common.idN('gzs_list_box_main').innerHTML = '<div style="margin:10px;">暂无数据</div>';} else{ var _html = []; var t; for (var i = 0, len = d.length; i < len; i++) { t = d[i]; _html.push('<dl><dt><img width="60" height="60" alt="" src="'+ t.headUrl+'"></dt><dd><a href="http://i.yanxiu.com/u/'+ t.userid+'">'+t.userName+'</a><p>浏览量:'+ t.accessedCount+'</p></dd></dl>'); }; common.idN('gzs_list_box_main').innerHTML = _html.join('\n'); var totalpage = parseInt(datas.result.total); if(totalpage > 1){ var _html=[],maxsize; if(pageindex>1){ _html.push('<a href="javascript:pageindex=1;loaddata();">首页</a>'); _html.push('<a href="javascript:pageindex--;loaddata();">上一页</a>'); } if(totalpage<=5){ maxsize=totalpage; } else{ maxsize=5;} for(var i=1;i<=maxsize;i++){ if(i==pageindex){ _html.push('<a class="selected" href="javascript:pageindex='+i+';loaddata();">'+i+'</a>'); continue; } _html.push('<a href="javascript:pageindex='+i+';loaddata();">'+i+'</a>'); } if(pageindex<totalpage){ _html.push('<a href="javascript:pageindex++;loaddata();">下一页</a>'); _html.push('<a href="javascript:pageindex='+totalpage+';loaddata();">末页</a>'); } common.idN('pages').innerHTML=_html.join(''); } } }, failure:function(){ common.idN('gzs_list_box_main').innerHTML = fn.loading('读取超时'); } }); } </script> {template "content","footer"}
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
lc10210103机器人#1 · 2013/7/5
BUG是:页面大于5时,点击下一页有刷新数据,但是页码显示不变,求大神!
Q123机器人#2 · 2013/7/6
难道不是这里(totalpage<=5)设置了? 【 在 lc10210103 的大作中提到: 】 : BUG是:页面大于5时,点击下一页有刷新数据,但是页码显示不变,求大神!
lc10210103机器人#3 · 2013/7/6
我知道,就是不知道怎么携程分页的,有BUG 【 在 Q123 的大作中提到: 】 : 难道不是这里(totalpage<=5)设置了?
hotcode机器人#4 · 2013/7/6
这不很明显吗。。。 你输出页码的代码(如下),始终从i=1开始输出。 for(var i=1;i<=maxsize;i++){ if(i==pageindex){ _html.push('<a class="selected" href="javascript:pageindex='+i+';loaddata();">'+i+'</a>'); continue; } _html.push('<a href="javascript:pageindex='+i+';loaddata();">'+i+'</a>'); }
lc10210103机器人#5 · 2013/7/6
知道啊,主要是不知道怎么改啊,我自己写了一些,但是没有调通!大神能帮忙? 【 在 hotcode 的大作中提到: 】 : 这不很明显吗。。。 你输出页码的代码(如下),始终从i=1开始输出。 : for(var i=1;i<=maxsize;i++){ : if(i==pageindex){ : ...................
hotcode机器人#6 · 2013/7/6
这个挺简单的吧,只要确定开始页数及结束页数就行了,大概代码如下: var start = (curr - 2) > 0 ? (curr - 2) : 1; var end = start + 4; if (end > total) { end = total || 1; while (start > 1 && (end - start) < 4) { start--; } } for(var i=start;i<=end;i++){ //输出页码 } 说明一下:start表示开始页数,end表示结束页数,curr表示当前页数,total表示总页数 【 在 lc10210103 的大作中提到: 】 : 知道啊,主要是不知道怎么改啊,我自己写了一些,但是没有调通!大神能帮忙?
lc10210103机器人#7 · 2013/7/6
主要是之前没有碰过JS,其实自己也写了一个,但是没调通……郁闷了 【 在 hotcode 的大作中提到: 】 : 这个挺简单的吧,只要确定开始页数及结束页数就行了,大概代码如下: : var start = (curr - 2) > 0 ? (curr - 2) : 1; : var end = start + 4; : ...................
hotc0de机器人#8 · 2013/7/7
大牛 来帮我搞定个问题.... 【 在 hotcode 的大作中提到: 】 : 这个挺简单的吧,只要确定开始页数及结束页数就行了,大概代码如下: : var start = (curr - 2) > 0 ? (curr - 2) : 1; : var end = start + 4; : ...................
lc10210103机器人#9 · 2013/7/8
谢谢大神!虽然我不是很理解JS的运行机制,当前页面是在点击的时候自动获取的吗?我觉得是的 【 在 hotcode 的大作中提到: 】 : 这个挺简单的吧,只要确定开始页数及结束页数就行了,大概代码如下: : var start = (curr - 2) > 0 ? (curr - 2) : 1; : var end = start + 4; : ...................