ASP.NET 生成分页 HTML 函数示例

cs 复制代码
public static string GeneratePagingHtml(int currentPage, int totalPages, string baseUrl)
{
    StringBuilder sb = new StringBuilder();
    sb.Append("<div class=\"pagination\">");

    // 上一页
    if (currentPage > 1)
    {
        sb.Append("<a href=\"" + baseUrl + "?page=" + (currentPage - 1) + "\">上一页</a>");
    }
    else
    {
        sb.Append("<span class=\"disabled\">上一页</span>");
    }

    // 页码
    for (int i = 1; i <= totalPages; i++)
    {
        if (i == currentPage)
        {
            sb.Append("<span class=\"current\">" + i + "</span>");
        }
        else
        {
            sb.Append("<a href=\"" + baseUrl + "?page=" + i + "\">" + i + "</a>");
        }
    }

    // 下一页
    if (currentPage < totalPages)
    {
        sb.Append("<a href=\"" + baseUrl + "?page=" + (currentPage + 1) + "\">下一页</a>");
    }
    else
    {
        sb.Append("<span class=\"disabled\">下一页</span>");
    }

    sb.Append("</div>");
    return sb.ToString();
}

这个函数接受三个参数:

  1. currentPage: 当前页码
  2. totalPages: 总页数
  3. baseUrl: 分页链接的基础 URL

函数会生成一个包含上一页、页码和下一页的 HTML 分页导航

使用示例:

cs 复制代码
int currentPage = 3;
int totalPages = 10;
string baseUrl = "~/MyPage.aspx";

string paginationHtml = GeneratePagingHtml(currentPage, totalPages, baseUrl);

生成的 HTML 输出:

html 复制代码
<div class="pagination">
    <a href="~/MyPage.aspx?page=2">上一页</a>
    <a href="~/MyPage.aspx?page=1">1</a>
    <a href="~/MyPage.aspx?page=2">2</a>
    <span class="current">3</span>
    <a href="~/MyPage.aspx?page=4">4</a>
    <a href="~/MyPage.aspx?page=5">5</a>
    <a href="~/MyPage.aspx?page=4">下一页</a>
</div>
相关推荐
IT_陈寒4 分钟前
明明设了默认值,为什么我的JavaScript函数参数还是undefined?
前端·人工智能·后端
CappuccinoRose5 分钟前
Web Components 基础
前端·javascript·交互·web component·shadow dom
晴天167 分钟前
前端 Monorepo 入门分享:从概念到实践
前端
lytao12322 分钟前
90% 覆盖率不等于没 Bug:用风险配置测试组合
前端·javascript·bug·软件工程
Claire_8826 分钟前
从零搭建网页:我用AI生成HTML/CSS/JS的实践与工具整理
css·人工智能·html
mayaairi26 分钟前
Vue2 组件通讯(一):Props传值完全指南
前端·javascript·vue.js
码艺-Alimjan28 分钟前
Tauri 2.x + Vue 3 桌面应用开发实战:从踩坑到完美落地
前端·javascript·vue.js·rust·typescript·go
AINative软件工程41 分钟前
编程
前端·llm
晴天1643 分钟前
peerDependencies 全面解析:前端依赖生态的核心机制与实战指南
前端·npm
I'mChloe43 分钟前
群晖部署 image-matting:把人像去背景做成一个随开随用的 Web 工具
android·前端