我想做以下 我有一个动态表在我的ASP页 ,我想显示在多个页面的表,如谷歌结果 任何有用的建议,请 说明: 我不使用gridview 所以有其他方法?在ASP.net中的多个页面(如谷歌搜索结果)
回答
您可以使用jquery tablesorter插件和jquery.tablesorter.pager插件来完成此操作。它将在一个标准的html表格上工作,并且有很多选项,例如备用行hilighting,排序等。
不利的一面是他将不得不将所有结果发送到许多不适合他需要的浏览器。他应该着眼于使用带跳和跳过的LINQ。 – 2010-05-04 21:53:26
对,可能会很慢,具体取决于表中的行数。 – derek 2010-05-04 21:54:39
它取决于将返回最多多少条记录。最有效的方法是
- 实施分页编号作为查询参数不同的链接。
根据查询参数,在服务器端,单独获取与该页面对应的记录。例如。如果页面大小为10,当前页面为2,则从服务器获取11,20条记录并将其绑定到html表。
如果您正在使用LINQ to SQL中,使用取,如果你使用的是直接的SQL查询或存储的特效SKIP方法为http://blog.ofiryaron.com/blog/post/Pagination-on-Linq-to-SQL-childs-play!.aspx
,使ROWID的使用,以获取该网页的记录。
我会把我的结果从一个正常的arraylist 在这个时候我只是把它们放到HTML表 我想使它在多页 – Hany 2010-05-04 22:24:52
如果您希望输出的灵活性比GridView提供的更大,请查看Repeater。
由于Repeater没有直接实现分页,你必须提供你自己的Next和Previous按钮。正如Sundararajan S所指出的,如果您有很多记录,您将希望使用当前页码和页面大小仅将当前页面的记录返回给浏览器,而不是全部。
下面是一个例子(我不知道你的数据来源将是什么样的,所以我只是用一个列表,例如,用更合适一些替代品。)
希望有所帮助。
的Default.aspx:
<asp:Button ID="PrevPageButton" runat="server" Text="Prev"
onclick="PrevPageButton_Click" />
<asp:Label ID="CurrentPageLabel" runat="server" />
<asp:Button ID="NextPageButton" runat="server" Text="Next"
onclick="NextPageButton_Click" />
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<h2> <%# Eval("Name") %> </h2>
<p>
<%# Eval("Description") %>
</p>
</ItemTemplate>
</asp:Repeater>
Default.aspx.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace RepeaterPaging
{
public partial class _Default : System.Web.UI.Page
{
private const int PageSize = 10;
private const int MaxPage = 4;
public int CurrPage
{
get
{
if (this.ViewState["CurrPage"] == null)
this.ViewState["CurrPage"] = 0;
return (int) this.ViewState["CurrPage"];
}
set { this.ViewState["CurrPage"] = value; }
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindItems();
}
}
protected void BindItems()
{
int currPage = CurrPage;
List<Book> books = new List<Book>();
int startItem = (currPage * PageSize) + 1;
for (int i = startItem; i < startItem+PageSize; i++)
{
books.Add(new Book("Title " + i, "Description " + i + " ..................."));
}
Repeater1.DataSource = books;
Repeater1.DataBind();
CurrentPageLabel.Text =
string.Format(" Page {0} of {1} ", CurrPage + 1, MaxPage + 1);
}
protected void NextPageButton_Click(object sender, EventArgs e)
{
if (CurrPage < MaxPage)
{
CurrPage++;
BindItems();
}
}
protected void PrevPageButton_Click(object sender, EventArgs e)
{
if (CurrPage > 0)
{
CurrPage--;
BindItems();
}
}
}
public class Book
{
public string Name { get; set; }
public string Description { get; set; }
public Book(string name, string desc)
{
Name = name;
Description = desc;
}
}
}
- 1. 谷歌搜索结果页面中的搜索输入
- 2. 在谷歌搜索结果
- 3. 从谷歌搜索页面获取所有搜索结果
- 4. 谷歌搜索:以PHP结果页面为总结果
- 5. 谷歌取消索引/从搜索中删除页面结果
- 6. Excel VBA打开谷歌的第一个搜索结果页面
- 7. 从谷歌搜索结果中删除已删除的页面
- 8. 谷歌搜索Ajax API更多结果
- 9. Jsoup谷歌搜索结果
- 10. 谷歌搜索结果
- 11. 谷歌像搜索结果
- 12. 谷歌搜索API - 结果
- 13. 谷歌CSE双页面返回搜索结果?
- 14. 谷歌自定义搜索结果页面
- 15. 谷歌搜索结果在SiteCore
- 16. 谷歌在iframe替代搜索结果
- 17. 获取谷歌搜索结果在c#
- 18. #hash通过Firefox添加,即在搜索结果页面(谷歌个人搜索)的URL结尾
- 19. 如何在新页面显示自定义谷歌的搜索结果
- 20. 的搜索结果页面
- 21. 得到真正的谷歌搜索结果中谷歌AJAX API
- 22. 谷歌自定义搜索结果页面不显示任何结果
- 23. 谷歌如何返回如此多的搜索结果?
- 24. 刮谷歌的搜索结果片断
- 25. 获得谷歌的搜索结果,PHP
- 26. 谷歌搜索结果中的丰富网页摘要
- 27. 谷歌如何决定在搜索结果中显示哪个网页?
- 28. 如何将谷歌地图添加到谷歌搜索结果?
- 29. 如何重定向从谷歌网页搜索API的搜索结果
- 30. importxml在谷歌文档并返回谷歌搜索结果
如果你不使用一个GridView,你有什么用?这些建议将取决于某个级别的实施细节。例如,[无论您使用什么]支持ObjectDataSource或SqlDataSource(两者均支持分页)。 – mwilson 2010-05-04 21:47:04
我正在使用一个普通表格(Html),但它是一个动态我的意思是它根据结果增长,我会显示 – Hany 2010-05-04 21:56:45