使用Ajax怎么实现一个搜索分页功能

发布时间:2021-04-20 16:06:04 作者:Leah
来源:亿速云 阅读:109

使用Ajax怎么实现一个搜索分页功能?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

什么是ajax

ajax是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术,可以通过在后台与服务器进行少量数据交换,使网页实现异步更新。

html代码

<a class="btn-lit" type="submit" onclick="searchResult(on())"><span>搜索</span></a>
//嵌套函数,用来情空最大页数和当前页数

<div id="fenye" class="cnt-wp" >
  <span id="pageAjax"> 页次:{$pagefunc[1]}/{$pagefunc[4]} 每页22总数{$pagefunc[2]}</span>
  <a class="btn-lit" onclick="pageAjaxFirst()"><span>首页</span></a>
  <a class="btn-lit" onclick="pageAjaxPrev()"><span>上一页</span></a>
  <a class="btn-lit" onclick="pageAjaxNext()"><span>下一页</span></a>
  <a class="btn-lit" onclick="pageAjaxEnd()"><span>尾页</span></a>
  <input type="text" name="pageTiao" id="pageTiao" >
  <a onclick="tiao()" class="btn-lit"><span>跳转</span></a>
  <input type="hidden" name="maxys" id="maxys" value="">
  <input type="hidden" name="page" id="pageCurrent" value="">
  //hidden用来保存最大页和当前页
</div>

js代码

<script type="text/javascript">
  //清空最大页和当前页,保证能够多次搜索
  function on()
  {
    $('#pageCurrent').val(''); 
    $('#maxys').val('');
  }
  //首页
  function pageAjaxFirst()
  {
    $('#pageCurrent').val(1);
    searchResult();
  }
  //尾页
   function pageAjaxEnd()
  {
    var maxys = $('#maxys').val();
    $('#pageCurrent').val(maxys);
    searchResult();
  }
  //下一页
  function pageAjaxNext()
  {
    var maxys = $('#maxys').val();
    var page = $('#pageCurrent').val();
    $('#pageCurrent').val(parseInt(page) +1);
    if (page > maxys) {
       $('#pageCurrent').val(maxys);
    }
    searchResult();
  } 
  //上一页
  function pageAjaxPrev()
  {
    var maxys = $('#maxys').val();
    var page = $('#pageCurrent').val();
    $('#pageCurrent').val(parseInt(page) -1);
    if (page < 1) {
       $('#pageCurrent').val(1);
    }
    searchResult();
  } 
  //跳转页面
  function tiao ()
  {
    var maxys = $('#maxys').val();
    var now = $('#pageTiao').val();
    $('#pageCurrent').val(now);
    var page = $('#pageCurrent').val();
    if (page < 1) {
       $('#pageCurrent').val(1);
    }
    if (page > maxys) {
       $('#pageCurrent').val(maxys);
    }
    searchResult();

  }
  function searchResult()
  {

    var formData = $("#myPost").serialize();
    var caption = $("#caption"); 
    var html = '';

    $('#pageBar').remove();
    $.ajax({  
      type:"get",  
      url:"/user/search/do_search",  
      data:formData, 
      success:success, 
      error: fail
    }); 

    function fail() {
      alert('查询条件有误。')
    }
    function success(search){
      if (search != null) {
      var obj = JSON.parse(search);
      var content = obj[0];
      var nowPage = obj[1];
      var total1 = obj[2];
      var allPage = obj[4];
      $.each(content, function (key, value) {
        html += '<tr class="sousuo"><td class="chk"><input value="" val="' + content[key]['user_id'] + '" type="checkbox" name="CheckBox[' + content[key]['user_id'] + ']" class="check-box" /></td> <td class="txt40 c">' + content[key]['user_id'] + '</td><td class="txt40 c"><a href="/user/user/user_info/user_id/' + content[key]['user_id'] +'" rel="external nofollow" ' + '"title="查看资料">'+ content[key]['account'] + '</a></td>' + '<td class="txt40 c">' + content[key]['nickname']+ '</td><td class="txt40 c">' + content[key]['sex'] + '</td><td class="txt80 c">' + content[key]['coin'] + '</td><td class="txt40 c">' + content[key]['tickets'] + '</td><td class="txt40 c">' + content[key]['gem'] + '</td><td class="txt40 c">VIP' + content[key]['vip_id'] + '</td><td class="txt40 c">' + content[key]['user_type'] + '</td> <td class="txt80 c">' + content[key]['register_platform'] + ' </td> <td class="txt80 c">' + content[key]['register_date'] + '</td> <td class="txt80 c">'+content[key]['last_login_time'] + '</td><td class="txt80 c">'+ content[key]['last_login_ip'] + '</td> <td class="txt80 c">'+ content[key]['game_login_times'] +'</td><td class="txt80 c">'+ content[key]['prohibit_flag'] + '</td><td class="icon"><a class="opt" title="编辑" href="/user/user/edit_user/user_id/' + content[key]['user_id'] + '}" rel="external nofollow" ><span class="icon-sprite icon-edit"></span></a></td></tr>';
      }); 
      $('.showTr').remove();
      $('.sousuo').remove();
      $('.xiaoshi').remove();

      $('.show').after(html);
      $('#maxys').val(allPage);
      $('#pageCurrent').val(nowPage);
      } else {
        $('.show').after('<tr>没有数据</tr>');
      } 
      $('#fenye').css('display','block');
      $('#pageAjax').html('页次:'+ nowPage + '/' + allPage +'每页22总数' + total1);
    }  
  }
</script>

关于使用Ajax怎么实现一个搜索分页功能问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

推荐阅读:
  1. 使用Django如何实现一个分页与搜索功能
  2. 使用SSM框架怎么实现一个分页和搜索分页功能

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

ajax

上一篇:使用ajax怎么实现在提交时校验表单

下一篇:怎么在CSS中反转贝塞尔曲线

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》