js修改url中某个参数的值

js修改url某个参数值

  • 当一个页面上的搜索条件很多而且需要进行联合get查询时
  • 当这个联合查询可以无限制的进行下去

这时你的url会怎样?无限制的在当前的url后面附加你的查询参数吗?

很显然这是不科学的。

下面分享一个办法可以直接修改当前url中的某个参数的值而不会导致这个url中同一个参数存在多个值的情况。
这在一定程度上就将url的长度控制到了最短。既人性化又利于搜索引擎的优化。

下面是利用javascript修改url中某个参数的值的具体思路:

/* 
* url 目标url 
* arg 需要替换的参数名称 
* arg_val 替换后的参数的值 
* return url 参数替换后的url 
*/ 
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; 
} 

使用方法如下:

changeURLArg(url,要修改参数的key,修改后的值); 
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值