关于两个JSP分页的问题(一个是只显示10个分页,二是指定页码跳转)
问题一:
JSP连接SQLserver实现分页显示已经完成,但如果页面太多的话,考虑分页超过10页的情况。若分页超过10页,则只显示当前的10页数字,其他页数隐藏,在点击>>和<<链接时再出现。如下: 
1 2 3 4 5 6 7 8 9 >> 
共有16页,当前显示第2页,则显示 
1 2 3 4 5 6 7 8 9 >> 
共有16页,当前显示第3页,则显示 
1 2 3 4 5 6 7 8 9 >> 
共有16页,当前显示第4页,则显示 
1 2 3 4 5 6 7 8 9 >> 
共有16页,当前显示第5页,则显示 
1 2 3 4 5 6 7 8 9 >> 
共有16页,当前显示第6页,则显示 
<< 2 3 4 5 6 7 8 9 10 >> 
共有16页,当前显示第7页,则显示 
<< 3 4 5 6 7 8 9 10 11 >> 
共有16页,当前显示第8页,则显示 
<< 4 5 6 7 8 9 10 11 12 >> 
共有16页,当前显示第9页,则显示 
<< 5 6 7 8 9 10 11 12 13 >> 
共有16页,当前显示第10页,则显示 
<< 6 7 8 9 10 11 12 13 14 >> 
共有16页,当前显示第11页,则显示 
<< 6 7 8 9 10 11 12 13 14 15 >> 
共有16页,当前显示第12页,则显示 
<< 8 9 10 11 12 13 14 15 16 
共有16页,当前显示第13页,则显示 
<< 8 9 10 11 12 13 14 15 16 
共有16页,当前显示第14页,则显示 
<< 8 9 10 11 12 13 14 15 16 
共有16页,当前显示第15页,则显示 
<< 8 9 10 11 12 13 14 15 16 
共有16页,当前显示第16页,则显示 
<< 8 9 10 11 12 13 14 15 16 
像这样的情况该如何实现呢?问题二:
如何在文本框中用户输入页数,点击回车时,直接切换到要去的页面??就这两个问题还望大虾指教,最好能详细一些,小弟太菜了o(∩_∩)o...

解决方案 »

  1.   

    写了这样一段代码,大致可以实现问题一的要求了,我的分页一共分了17页,点击13页前的都可以正常实现功能,但不知道为什么,从点13页及以后的就造成服务器满载,无法正常运行,CPU消耗达到100%,造成网页一直不能打开。我想可能是什么地方的变量设置错误了还是什么呢?望指教
    问题一的大致解决代码我写的如下: 
    <% 
    if(cpage<10) 
    {for(int a=1;a<=10;a++) 
    {if(a==cpage) 

    out.print(a); 

    else 
    {%> 
    <a href="?pages=<%=a%>"><%=a%></a>  
    <%} 


    else 
    {for(int b=cpage-5;b<=cpage+5;b++) 

    if(b<=0) 
    {b=1;} 
    if(b>=allpage) 
    {b=allpage;} 
    if(b==cpage) 

    out.print(b); 

    else 

    %> 
    <a href="?pages=<%=b%>"><%=b%></a> 
    <% } 

    }%> 
      

  2.   

    楼主,只要能得到,请求页号,文本框也好,link也罢,都一样的,能算出来请求页号,就行
      

  3.   

    谢谢LS的朋友提醒,问题2已经解决了。
    现在就差服务器点击超过13页分页就要死掉的问题了,哪位大虾帮忙解决下吧。
    写了这样一段代码,大致可以实现问题一的要求了,我的分页一共分了17页,点击13页前的都可以正常实现功能,但不知道为什么,从点13页及以后的就造成服务器满载,无法正常运行,CPU消耗达到100%,造成网页一直不能打开。我想可能是什么地方的变量设置错误了还是什么呢?望指教 
    问题一的大致解决代码我写的如下:  
    <%  
    if(cpage <10)  
    {for(int a=1;a <=10;a++)  
    {if(a==cpage)  
    {  
    out.print(a);  
    }  
    else  
    {%>   
    <a href="?pages= <%=a%> "> <%=a%> </a>    
    <%}  
    }  
    }  
    else  
    {for(int b=cpage-5;b <=cpage+5;b++)  
    {  
    if(b <=0)  
    {b=1;}  
    if(b> =allpage)  
    {b=allpage;}  
    if(b==cpage)  
    {  
    out.print(b);  
    }  
    else  
    {  
    %>   
    <a href="?pages= <%=b%> "> <%=b%> </a>   
    <% }  
    }  
    }%>   
      

  4.   

    JSP连接SQLserver实现分页显示已经完成,但如果页面太多的话,考虑分页超过10页的情况。若分页超过10页,则只显示当前的10页数字,其他页数隐藏,在点击> > 和 < <链接时再出现。如下:  
    1 2 3 4 5 6 7 8 9 > >   
    共有16页,当前显示第2页,则显示  
    1 2 3 4 5 6 7 8 9 > >   
    共有16页,当前显示第3页,则显示  
    1 2 3 4 5 6 7 8 9 > >   
    共有16页,当前显示第4页,则显示  
    1 2 3 4 5 6 7 8 9 > >   
    共有16页,当前显示第5页,则显示  
    1 2 3 4 5 6 7 8 9 > >   
    共有16页,当前显示第6页,则显示  
    < < 2 3 4 5 6 7 8 9 10 > >   
    共有16页,当前显示第7页,则显示  
    < < 3 4 5 6 7 8 9 10 11 > >   
    共有16页,当前显示第8页,则显示  
    < < 4 5 6 7 8 9 10 11 12 > >   
    共有16页,当前显示第9页,则显示  
    < < 5 6 7 8 9 10 11 12 13 > >   
    共有16页,当前显示第10页,则显示  
    < < 6 7 8 9 10 11 12 13 14 > >   
    共有16页,当前显示第11页,则显示  
    < < 6 7 8 9 10 11 12 13 14 15 > >   
    共有16页,当前显示第12页,则显示  
    < < 8 9 10 11 12 13 14 15 16  
    共有16页,当前显示第13页,则显示  
    < < 8 9 10 11 12 13 14 15 16  
    共有16页,当前显示第14页,则显示  
    < < 8 9 10 11 12 13 14 15 16  
    共有16页,当前显示第15页,则显示  
    < < 8 9 10 11 12 13 14 15 16  
    共有16页,当前显示第16页,则显示  
    < < 8 9 10 11 12 13 14 15 16  像这样的情况该如何实现呢? 
    还是这个问题,还请大虾们指教下
      

  5.   

    谢谢各位参于,问题已经解决了,我这样写的代码
    <%
    if(cpage>4)
    {int d=cpage-5;
      if(d<=0)
    {d=1;}%>
    <a href="jspM2-3.jsp?pages=<%=d%>">《《</a>&nbsp;
    <%}
      if(cpage<10)
    {
     for(int a=1;a<=10;a++)
    {if(a==cpage)
    {
    out.print(a);
    }
    else
    {%>
    <a href="jspM2-3.jsp?pages=<%=a%>"><%=a%></a>&nbsp;
    <%} 
    }
    }
    else
    {for(int b=pages-5;b<=pages+5;b++)
       { 
      if(b<=0) 
    {b=1;}
      if(b==cpage)
           {
            out.print(b);
           }
      else if(b<=allpage)
       {
    %>
          <a href="jspM2-3.jsp?pages=<%=b%>"><%=b%></a>     
    <%     }
    }
    }
    if(cpage<allpage)
    {int d=cpage+5;
      if(d>+allpage)
    {d=allpage;}%>
    <a href="jspM2-3.jsp?pages=<%=d%>">》》</a>&nbsp;
    <%}
    %>
    </td>     
       </tr> 
    现在已能很好解决这个要求了。结贴送分