生成一个标签foreach循环

时间:2017-11-08 06:31:15

标签: javascript jquery

我试图用jquery做一个简单的分页。我的目标是在页面编号和#34; paginate();"然后它只会追加+5次,每页5页。我的意思是它会动态地生成+5页标签。我已经尝试了下面的代码,但它没有循环5次。我的目标是:生成6,7,8,9,10而不是1,2,3,4,5



function paginate(pageNumber) {
  for (var i = 0; i < pageNumber; i++) {
    //alert(i);
    $(".inner").append("<a href="
      "index?page=" + i + > "" + i + ""
      "</a>");
  }
}

paginate(5);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h2>Pagination</h2>
<div class="container">
  <div class="inner"></div>
</div>
&#13;
&#13;
&#13;

3 个答案:

答案 0 :(得分:0)

这样写

$(".inner").append("<a href='index?page='" + i + ">" + i + "</a>");

&#13;
&#13;
function paginate(pageNumber) {
  for (var i = 0; i < pageNumber; i++) {
    $(".inner").append("<a href='index?page='" + i + ">" + i + "</a>");
  }
}

paginate(5);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h2>Pagination</h2>
<div class="container">
  <div class="inner"></div>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

使用时应将其写为 $(".inner").append("<a href=\"index?page=" + i + "\">" + i + "</a>");

你需要使用\来逃避额外的",如果你不使用\来逃避,那么代码要么考虑你的开始或结束一个字符串。

&#13;
&#13;
function paginate(pageNumber) {
  for (var i = 6; i <= (pageNumber + 5); i++) {
    //alert(i);
    $(".inner").append("<a href=\"index?page=" + i + "\">" + i + "</a>");
  }
}

paginate(5);


function paginate2(pagestart, pageNumber) {
  for (var i = pagestart; i < (pagestart + pageNumber); i++) {
    //alert(i);
    $(".inner").append("<br><a href=\"index?page=" + i + "\">" + i + "</a>");
  }
}


paginate2(6,5);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<h2>Pagination</h2>
<div class="container">
  <div class="inner"></div>
</div>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

您的代码中只有一个语法。此代码将正常工作:

<script
        src="https://code.jquery.com/jquery-3.2.1.js"
        integrity="sha256-DZAnKJ/6XZ9si04Hgrsxu/8s717jcIzLy3oi35EouyE="
        crossorigin="anonymous"></script>
<h2>Pagination</h2>
<div class="container">
    <div class="inner"></div>
</div>

<script>
    function paginate(pageNumber) {
        for (var i = 0; i < pageNumber; i++) {
            $(".inner").append("<a href=index?page=" + i +">" + i + "</a>")

        }
    }

    paginate(5);
</script>