asp.net wap 用list 分页,解决100分!!!我是用List 来绑定数据!!!!!
解决方案 »
- JS实现打印功能
- 怎样后台设置方本框的边框颜色(input,textbox)
- 关于如何将一个String字符串 和数据流问题
- .NET2003的一个小问题
- 导出Excel 身份证号码问题~!
- 运行default.aspx文件时出现如下错误信息,Server Error in '/' Application.The current identity (NT AUTHORITY\NETWORK SERVICE) does
- 为什么我做的web上用水晶报表打印的页面,向上或转到等图片无法显示,急、急、急、急
- FRAME 页面刷新
- 简单问题:asp.net中 怎么执行带多个参数的存储过程?
- 没分了..全部分就这么多了..希望各位兄弟帮忙啊!!!!!!!明天就要用了!!!!!!在线等!
- [JAVA版没人理]请教Java调用.Net的web Service的问题
- 如何将GridView显示出来的数据导入到Excel里
*@param list List 需要分页的List
*@param currPage int 当前页
*/
public String[][] showList(List list, int currPage) throws Exception
{
this.setList(list);
int pageSize = this.getPageSize();//分页大小
this.setRowsCount();
int rowsCount = this.getRowsCount();//总记录数
this.setPageCount();
int pageCount = this.getPageCount();;//页总数
this.setPageRowCount();
int pageRowCount = this.getPageRowCount();//当前页首记录指针
String[][] result;
if(pageCount == 1)
{
//总记录数未达到一页
result = dispSampleMainInfo(list,pageRowCount,rowsCount);
this.foot = "|<<<" + " " + "<<" + " " +
"第" + currPage + "页" + " " +
">>" + " " + ">>>|" + " " +
"共" + pageCount + "页";
}
else
{
//总记录数超过一页
if(currPage ==1)//第一页
{
result = dispSampleMainInfo(list,pageRowCount,pageRowCount + pageSize);
this.foot = "|<<<" + " " + "<<" + " " +
"第" + currPage + "页" + " " +
"<a href='results.jsp?page=" + (currPage + 1) + "'>>></a>" + " " +
"<a href='results.jsp?page=" + pageCount + "'>>>>|</a>" + " " +
"共" + pageCount + "页";
}
else if(currPage >1 && currPage < pageCount)//中间页
{
result = dispSampleMainInfo(list,pageRowCount,pageRowCount + pageSize);
this.foot = "<a href='results.jsp?page=1'>|<<<</a>" + " " +
"<a href='results.jsp?page=" + (currPage - 1) + "'><<</a>" + " " +
"第" + currPage + "页" + " " +
"<a href='results.jsp?page=" + (currPage + 1) + "'>>></a>" + " " +
"<a href='results.jsp?page=" + pageCount + "'>>>>|</a>" + " " +
"共" + pageCount + "页";
}
else//最后页
{
result = dispSampleMainInfo(list,pageRowCount,rowsCount);
this.foot = "<a href='results.jsp?page=1'>|<<<</a>" + " " +
"<a href='results.jsp?page=" + (currPage - 1) + "'><<</a>" + " " +
"第" + currPage + "页" + " " +
">>" + " " + ">>>|" + " " +
"共" + pageCount + "页";
}
}
return result;
} private String[][] dispSampleMainInfo(List list, int off, int end)
{
String[][] result;
if(list.size() == 0)
{
result = new String[1][1];
result[0][0] = "没有查询到相关的记录!";
}
else
{
result = new String[end-off][Sample1.Keys[0].length];
int k = 0;
for(int i = off; i < end; i++)
{
Map m = (Map)list.get(i);
for(int j = 0; j < m.size(); j++)
{
String key = Sample1.Keys[0][j];
String value = (String)m.get(key);
result[k][j] = value;
}
k++;
}
}
return result;
}最终获得一个页面要用到的二维数组,然后的工作就是在显示页面的方法里使用这个数组就搞定!呵呵......上面是在Bean里完成的,所以,没有把具体的显示(HTML)给写出来。
/// 分页页码处理
/// </summary>
/// <param name="lnk1"></param>
/// <param name="lnk2"></param>
/// <param name="pageUrl"></param>
/// <param name="pageIndex"></param>
/// <param name="pageSize"></param>
/// <param name="pageCount"></param>
public void PagerBuilder(Link lnk1, Link lnk2, string pageUrl, int pageIndex, int pageSize, int pageCount)
{
if (pageSize == 0)
pageSize = 1;
if (pageIndex == 0)
pageIndex = 1;
if (pageCount == 0)
pageCount = 1;
int lastPageIndex = pageCount / pageSize; if (pageIndex == 1)
{
lnk1.Text = "下一页";
lnk1.NavigateUrl = pageUrl + "?p=2";
lnk2.Text = "尾页";
lnk2.NavigateUrl = pageUrl + "?p=" + lastPageIndex.ToString();
}
else if (pageIndex == lastPageIndex)
{
lnk1.Text = "首页";
lnk1.NavigateUrl = pageUrl;
lnk2.Text = "上一页";
lnk2.NavigateUrl = pageUrl + "?p=" + (lastPageIndex - 1).ToString();
}
else
{
lnk1.Text = "上一页";
lnk1.NavigateUrl = pageUrl + "?p=" + (pageIndex - 1).ToString();
lnk2.Text = "下一页";
lnk2.NavigateUrl = pageUrl + "?p=" + (pageIndex + 1).ToString();
}
}
------------↓↓↓↓↓↓↓↓↓↓↓↓↓大家注意↓↓↓↓↓↓↓↓↓↓↓-----------------------------
小弟目前是搞wap开发,初次接触希望大家给与指导。这个分页是用于wap的分页的!