[size=x-large][i]我现在想做一个分页,思路是这样的,首先从后台里取出符合条件的15条记录(全部符合的可能很多),每页显示5条,这样传到前台的是3页的记录,到了前台我想用javascript分页,这样想是因为可以与后台交互次数尽量减少,每次取出来一部分数据,省的每次点都要与后台交互一次.但是现在有一个新的问题出现了, 当把数据传到前台的时候,我那个超连接应该怎么去写,在点1或2的时候用javascript来控制,在点3的时候与后台交互.请高手们指点下,我的前台水平很垃圾,写出代码.谢谢! (暂时最好先不考虑ajax)我的分不是很多谢谢高手帮下忙[/i][/size]
[b]问题补充:[/b]
是这样的,当点3的时候,数据虽然已经取出来了,但是可能还有很多记录没有取出来,所以在点3的时候把数据显示出来,同时还要与后台交互,再把后的15条记录取出来.形成4,5,6页依次类推.
[b]问题补充:[/b]
[size=x-large][i]我现在想做一个分页,思路是这样的,首先从后台里取出符合条件的15条记录(全部符合的可能很多),每页显示5条,这样传到前台的是3页的记录,到了前台我想用javascript分页,这样想是因为可以与后台交互次数尽量减少,每次取出来一部分数据,省的每次点都要与后台交互一次.但是现在有一个新的问题出现了, 当把数据传到前台的时候,我那个超连接应该怎么去写,在点1或2的时候用javascript来控制,在点3的时候与后台交互.请高手们指点下,我的前台水平很垃圾,写出代码.谢谢! (暂时最好先不考虑ajax)我的分不是很多谢谢高手帮下忙[/i][/size]
[b]问题补充:[/b]
[size=xx-large]是这样的,当点3的时候,数据虽然已经取出来了,但是可能还有很多记录没有取出来,所以在点3的时候把数据显示出来,同时还要与后台交互,再把后的15条记录取出来.形成4,5,6页依次类推.[/size]
[b]问题补充:[/b]
[size=x-large]请问 那用什么方法可以很好地分页 让访问速度上来 而且能适应更新速度[/size]
不考虑ajax,那在当前页面是无法请求4,5,6页的数据了,那么你要在新的页面(可以是隐藏的iframe)请求后台。之后做法是用js把隐藏iframe的数据展示到你当前显示的页面上。
而且你还要考虑点第三页的时候,后面页码要动态设置,如果只有四页,你就增加“4”,如果有五页,你就增加“4、5”.
不知道这样的逻辑是否太复杂了,为何不用惯例的分页方法?是不是低谷了服务器接受请求的能力。javaeye这些网站不也都是用哪页数据,请求哪页,同时也计算好了总共有多少页。
[code="html"]
[/code]
说明:上面用的是三个div,如果对js熟悉,可以把这十五条记录的信息存放到js数组中,点1,2,3时,动态的生成页面元素(table,div都可以)。
看到你说点3的时候要与后台交互,第三页的5条不是已经取到前台了吗?
还是你想要点4再与后台交互取取4~6页的15条记录?
你的处理方式在数据变化不是太快下才能用,如果数据变化太快这样每次取一部分,很有可能造成显示的数据已经过期了
[url]http://wind-sing.iteye.com/admin/blogs/455099[/url]
简单啊 你判断一下 当前页码 %3==0的话 向后台请求 否则调用js显示下一页
按需所求啊,每次后台传输一个页面的数据,这样速度也不会很慢,而且能保证数据是最新的,Ajax请求的时候传需要的页面过去就行了,如果你想用纯js的分页就无法保证数据是最新的,因为你只有在请求的时候才能获得数据,纯js分页只是动态的改变dom和上次请求已拿到的数据,所以得调整一下,每次点击下一页或者跳转页面得进行一次请求。这样就好了,如果想减少请求数据就增加一个页面的数据数。为了加快速度就只能减少一个页面的数据数。按需要取舍就好了。
你如果一次穿几个页面的数据过来,然后不在点击页面的时候显示已有的,如果没有再提交请求这样不好。无法保证数据及时性。还是一页一页的请求数据。除非你能保证你的数据在用户下次发送请求数据时不改变才能这样做,可是这种保证谁也无法做出。如果你坚持这样做的话,很有可能造成一个潜在的bug