Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在jQueryAjax响应中隐藏后面的页面并显示分页?_Javascript_Jquery_Ajax - Fatal编程技术网

Javascript 如何在jQueryAjax响应中隐藏后面的页面并显示分页?

Javascript 如何在jQueryAjax响应中隐藏后面的页面并显示分页?,javascript,jquery,ajax,Javascript,Jquery,Ajax,我有来自ajax响应的分页列表。如何隐藏后面的页面并根据限制器显示分页 如果限制器为5,则必须仅显示10个页面链接并隐藏后续页面 12345678910。。下一个 1112131415。。下一个 我尝试从ajax响应中计算li长度,但它没有显示计数。如何获取计数并隐藏和显示后续页面 输出: next_page_num: <li>1</li><li>2</li><li>3</li><li>5</li>&

我有来自ajax响应的分页列表。如何隐藏后面的页面并根据限制器显示分页

如果限制器为5,则必须仅显示10个页面链接并隐藏后续页面

12345678910。。下一个

1112131415。。下一个

我尝试从ajax响应中计算li长度,但它没有显示计数。如何获取计数并隐藏和显示后续页面

输出:

next_page_num: <li>1</li><li>2</li><li>3</li><li>5</li><li>6</li><li>7</li>..



  success: function(response){  
                $("#listing_products").html("");
                $("#listing_products").html(response.html_content);
                $("ul.pagination").html("");
                $("ul.pagination").html(response.next_page_num);

                if(page_limit==5){

                    var product_listing_count = response.next_page_num;



                    if($(product_listing_count).length>8){

//How to hide after 8th pages and hide later pages add next to 8th page

 ));

                    }               

                    $("ul.pagination").html("");
                    $("ul.pagination").html(response.next_page_num);

                }
next\u page\u num:
  • 1
  • 2
  • 3
  • 5
  • 6
  • 7
  • 。。 成功:功能(响应){ $(“#列出#产品”).html(“”); $(“#列出#产品”).html(response.html#u content); $(“ul.pagination”).html(“”); $($ul.pagination”).html(response.next_page_num); 如果(页次限制==5){ var product_listing_count=response.next_page_num; if($(产品清单计数).length>8){ //如何在第8页之后隐藏,以及在第8页旁边添加隐藏以后的页面 )); } $(“ul.pagination”).html(“”); $($ul.pagination”).html(response.next_page_num); }
    这里是我使用的香草JS解决方案

    • 正则表达式

      var regex = /<li[^>]*>\d+<\/li[^>]*>/g
      

      这是因为
      $.fn.find
      函数遍历元素的子节点,因此如果没有像
      这样的父节点,那么就没有子节点

      然后:

      返回6

      或者像Adelin sugested一样,使用RegExp:

       '<li>1</li><li>2</li><li>3</li><li>4</li><li>5</li><li>6</li>'
            .match(/(<li>)/g).length
      
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • ' .match(/(
    • )/g).长度
    • 返回6


      为你尝试过的内容提供最低限度的工作实现。我喜欢不,只要跟随链接,你就会明白,哈哈!这是一个小细节,你可以调整自己。添加了一些内容,但这取决于你我应该如何单独计算li的长度
      $('<li>1</li><li>2</li><li>3</li><li>4</li><li>5</li><li>6</li>')
          .find('li').length; 
      
      '<li>1</li><li>2</li><li>3</li><li>4</li><li>5</li><li>6</li>'
          .split('<li>').length - 1; 
       //-1 because there will be always a empty entry in the array
      
       '<li>1</li><li>2</li><li>3</li><li>4</li><li>5</li><li>6</li>'
            .match(/(<li>)/g).length