Html 分页get build中导航链接的表示方式如何?
我正在研究如何用html进行简单的分页,我想我遗漏了一些东西。Html 分页get build中导航链接的表示方式如何?,html,css,sql,pagination,Html,Css,Sql,Pagination,我正在研究如何用html进行简单的分页,我想我遗漏了一些东西。 我计算了如何使用当前页码和每页最大行数来进行限制。 我还找到了一些关于如何通过css显示链接的教程。例如 <ul id="mystyle"> <li class="previous">«Previous</li> <li class="active">1</li> <li><a href="?page=2">2</a><
我计算了如何使用当前页码和每页最大行数来进行
限制。
我还找到了一些关于如何通过css显示链接的教程。例如
<ul id="mystyle">
<li class="previous">«Previous</li>
<li class="active">1</li>
<li><a href="?page=2">2</a></li>
<li><a href="?page=3">3</a></li>
<li><a href="?page=4">4</a></li>
<li><a href="?page=5">5</a></li>
<li><a href="?page=6">6</a></li>
<li><a href="?page=7">7</a></li>
<li class="next"><a href="?page=2">Next »</a></li>
</ul>
- «previous
- 1
但我对用户在页面中选择的链接的显示感到困惑。当用户查看第一批行时,他应该不能看到上一行
,因为此时没有上一行(我的意思是在第1页之前没有上一行)。
因此,对于最后一批,他应该不能看到Next
(至少是一个超链接),因为在最后一页之后没有Next
。但我对如何确定这一点感到困惑。
我能想到的唯一方法是,如果我执行选择COUNT(*)
,以便获得我正在分页的结果集的总大小。但这是否违背了分页性能方面的目的呢。我经历过大量的结果集,SELECT COUNT(*)
需要花费大量的时间(特别是如果我们有连接,我的意思是除了数据量之外)。
我需要帮助来理解如何构建算法以及让我困惑的微妙之处。免责声明,这是在看不到服务器端代码或对应用程序一无所知的情况下实现的,但这个jQuery解决方案可能会让您开始。再说一次,这不是我处理的方式
if ($('li.active').text() === '1') {
$('li.previous').hide();
}
if ($('li.next').prev('li').hasClass('active')) {
$('li.next').hide();
}
这将在需要时隐藏上一个/下一个按钮。我不知道前端是在什么基础上构建的,但我通常在服务器端执行这类操作。@masedesign:服务器端解决方案是我正在构建的。如果不考虑前端返回的内容,很难说。如果您的页面链接是一致的(仅基于页码),并且您可以为总页数和当前页面设置一个变量,那么可能会有一个非常简单的JavaScript解决方案。@masedesign:为什么这取决于返回?页面是在服务器上生成的。链接的数量是固定的。例如,10$('li.next').prev('li').hasClass('active')
这里的意思是什么?我不知道如果最后一页是活动的,那么就没有下一页,所以它会隐藏下一页链接。在你的例子中,如果你在第7页,“下一步”按钮将被隐藏。注意:这是错误的,或者我没有抓住要点。如果导航链接中的最后一个链接处于活动状态,这并不意味着最后一页处于活动状态,因为我们可以在结果集中获得更多可用内容。因此,我们使用选择COUNT*
来回答原始问题。否则,我们如何知道它是最后一个页面页面?这是正确的,如果您对范围超出显示范围的分页感兴趣,或者您不总是显示最后一页(就像某些人选择的那样),那么您必须计算页数。