【问题标题】:How to increment value from javascript to html?如何将值从 javascript 增加到 html?
【发布时间】:2019-02-22 19:47:58
【问题描述】:

我想做一个非常简单的按钮来切换页面(“下一个”和“上一个”)。我的页面是这样分页的。

function showPages(id = 1) {
  var totalNumberOfPages = 6;
  for (var i = 1; i <= totalNumberOfPages; i++) {
    if (document.getElementById('page' + i)) {
      document.getElementById('page' + i).style.display = 'none';
    }
  }
  if (document.getElementById('page' + id)) {
    document.getElementById('page' + id).style.display = 'block';
  }
};

showPages();
<span style="float: left;">
  <a href="#" onclick="javascript:showPages(id--)">Previous</a>
</span>

<span style="float: right;">
  <a href="#" onclick="javascript:showPages(id++)">Next</a>
</span>

当我点击“下一个”或“上一个”按钮时,它的行为很奇怪。有时会转到下一页,有时不会...

(子问题:如何限制代码,使其不会尝试显示-1页面或超过最大页数的页码?

【问题讨论】:

  • 如果(元素存在)隐藏它如果(元素存在)显示它.....

标签: javascript html pagination


【解决方案1】:

不要在链接中使用 id-- 或 id++,因为这会修改实际的页面 id。而是像这样使用 +1 或 -1:

<span style="float: left;">
    <a href="#" onclick="javascript:showPages(id - 1)">Previous</a>
</span>

<span style="float: right;">
    <a href="#" onclick="javascript:showPages(id + 1)">Next</a>
</span>

【讨论】:

  • 很遗憾,它不起作用。 id - 1 链接到不存在的页面“page-1”,“id + 1”链接到“page+1”,但不是“实际页面”+ 1 页。我的意思是,它不会增加正在查看的页面数:/
  • 你必须更新你的逻辑来考虑在第一页或最后一页上的问题,而不是在那种情况下添加链接。
  • 我猜问题是我使用了锚点。我相信这就是为什么没有数据存储在“id”中,也没有增加。我实际上正在寻找解决这个问题的方法。
猜你喜欢
  • 1970-01-01
  • 2017-01-09
  • 2013-12-08
  • 1970-01-01
  • 1970-01-01
  • 2016-06-28
  • 2013-02-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多