最新消息:文章中包含代码时,请遵守代码高亮规范!

获取页面路由,并修改路由中的某个参数【原创】

JavaScript Aimee 125浏览 1评论

当我们使用分页功能时,点击页码需要跳转至对应的页面,此时,页面中路由的page值随之发生变化。为了方便这个功能的实现,我们可以获取当前页面的路由,并且只改变这个路由中page的值。不仅仅是方便分页的实现,在许多情况下都能够发挥作用,这边以分页为例,做具体讲解。

js中的 代码如下:

获取路由中的当前页数page的值:

var page_now = '{{ app.request.get('page')|default(1) }}';

获取本页面的路由:

var url_now = window.location.href;

更改page的值,实现页面跳转:

$(document).on('click','.zxfPagenum,.prebtn,.nextbtn',function() {
    var page = $(this).text();
    if (page == '«') {
        page_now = parseFloat(page_now) - 1;
        location.href=changeURLArg(url_now, 'page', page_now);
    }
    else if (page == '»') {
        page_now = parseFloat(page_now) + 1;
        location.href=changeURLArg(url_now, 'page', page_now);
    }
    else {
        page_now = $(this).text();
        location.href=changeURLArg(url_now, 'page', page_now);
    }
});

更换路由中的某个参数值(此段不需添加任何修饰):

function changeURLArg(url,arg,arg_val){
    var pattern=arg+'=([^&]*)';
    var replaceText=arg+'='+arg_val;
    if(url.match(pattern)){
        var tmp='/('+ arg+'=)([^&]*)/gi';
        tmp=url.replace(eval(tmp),replaceText);
        return tmp;
    }else{
        if(url.match('[\?]')){
            return url+'&'+replaceText;
        }else{
            return url+'?'+replaceText;
        }
    }
    return url+'\n'+arg+'\n'+arg_val;
};

 

转载时请注明出处及相应链接,本文永久地址:http://blog.it985.com/22651.html


pay_weixin
pay_weixin
微信打赏
pay_weixin
支付宝打赏
感谢您对作者aimee123的打赏,我们会更加努力!    如果您想成为作者,请点我

您必须 登录 才能发表评论!

网友最新评论 (1)

  1. Liphee
    这个获取页面的页码程序,效率很低。考虑后台直接传页码参数。
    Liphee2017-11-27 12:08