【问题标题】:Pagination of plain HTML files纯 HTML 文件的分页
【发布时间】:2012-11-11 06:08:15
【问题描述】:

我在根文件夹中有 index.html 文件:

/2/index.html
/3/index.html
/4/index.html
/5/index.html
…
/467/index.html
/468/index.html
…
/lastpagenumber/index.html

如何创建一个分页脚本,从这些文件夹的名称(12345……467468……lastpagenumber)创建 URL ?换句话说,我需要以某种方式解析服务器以创建 URL 并检测用户目前在哪个页面上。所以我想在每一页上都有一个简单的分页,比如:

1 2 3 下一页 最后一页

上一页 1 2 3 4 5 下一页最后一页

467 469 468 最后一页

【问题讨论】:

  • 我不知道该怎么做。
  • 我正在写答案,请耐心等待
  • 使用纯 HTML 你无法做到这一点,你有可以使用的服务器端脚本吗? (php, ruby, asp.net...)
  • true,你需要php/sql什么的;但据我了解,他有一些东西,他不知道如何生成分页
  • 我在服务器上有 php 和 mysql。但我不擅长 php。我需要直接简单的解释示例来理解如何做到这一点。

标签: html pagination


【解决方案1】:

你应该阅读整篇文章,然后尝试以你的风格去做;

文章很简单:

  1. 尝试捕获实际页面值,如果通过 GET 发送,第 6 步
  2. 设置每页最大文章值
  3. 查询数据库表,提取所有需要的文章
  4. 查看您有多少页:ceil(total_articles/articles_per_page)
  5. 使用 for 循环 i 打印页面
  6. 通过 GET 发送页码,在按钮单击事件上,然后再次转到第 1 步

来源:pagination

【讨论】:

    【解决方案2】:

    好吧,我认为使用纯 HTML 是不可能的,因为您必须执行一些评估。

    您可以做的是,将 java 脚本放在顶部并创建一个“手动”执行的循环。您应该在所有页面中都有<div>,并将 javascript 放在单独的 script.js 文件中,并从所有 html 页面中引用它。因此,所有页面都将引用一个脚本,您可以在其中手动调整页面数量(如果是 468)

    检查一下,让我知道它是否有效:

    <div id="pages"> </div>
    
    <script>
        getCurrentPage();
    
        function getCurrentPage(){
    
            currentPage = getDirectoryName();
            for (i=0; i<468; i++){
                curdoc = document.getElementById("pages").innerHTML;
                if (i==(currentPage*1)){
                     createLink = ' <a href=/'+i+'/index.html><b>'+i+'</b></a> | ';
                    document.getElementById("pages").innerHTML = curdoc+ '' +createLink;
                }else{
                    createLink = ' <a href=/'+i+'/index.html>'+i+'</a> | ';
                    document.getElementById("pages").innerHTML = curdoc+ '' +createLink;
                }
            }
        }
    
        function getDirectoryName(){
            var file, n;
            file = window.location.pathname;
            pathArray = file.split("/");
            directoryName = pathArray[(pathArray.length)-2];
            return(directoryName);
        }
    
    </script>
    

    【讨论】:

    • 很好,但如果总是手动更改最后一页的这个数量,那么每次添加一个新页面的链接就更容易了。它还显示分页中的所有页面。它无法识别四个下一页和上一页。
    • 您无法从服务器“获取”目录列表(假设您的项目在某种 Web 服务器上运行),因为 JavaScript 是一种客户端语言(在您的浏览器)。要开始进行某种服务器端工作,您必须实现服务器端编程(PHP 示例)。我认为我不应该继续研究上述解决方案,因为您决定 add links。 PS - 非常糟糕的设计和解决方案。学点简单的 php 就可以轻松搞定the right way
    猜你喜欢
    • 1970-01-01
    • 2012-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多