JS 修改URL参数(实现代码)


Posted in Javascript onJuly 08, 2013
function changeURLPar(url, ref, value) {
    var str = "";
    if (url.indexOf('?') != -1)
        str = url.substr(url.indexOf('?') + 1);
    else
        return url + "?" + ref + "=" + value;
    var returnurl = "";
    var setparam = "";
    var arr;
    var modify = "0";
    if (str.indexOf('&') != -1) {
        arr = str.split('&');
        for (i in arr) {
            if (arr[i].split('=')[0] == ref) {
                setparam = value;
                modify = "1";
            }
            else {
                setparam = arr[i].split('=')[1];
            }
            returnurl = returnurl + arr[i].split('=')[0] + "=" + setparam + "&";
        }
        returnurl = returnurl.substr(0, returnurl.length - 1);
        if (modify == "0")
            if (returnurl == str)
                returnurl = returnurl + "&" + ref + "=" + value;
    }
    else {
        if (str.indexOf('=') != -1) {
            arr = str.split('=');
            if (arr[0] == ref) {
                setparam = value;
                modify = "1";
            }
            else {
                setparam = arr[1];
            }
            returnurl = arr[0] + "=" + setparam;
            if (modify == "0")
                if (returnurl == str)
                    returnurl = returnurl + "&" + ref + "=" + value;
        }
        else
            returnurl = ref + "=" + value;
    }
    return url.substr(0, url.indexOf('?')) + "?" + returnurl;
}
Javascript 相关文章推荐
使用js获取QueryString的方法小结
Feb 28 Javascript
jquery文字上下滚动的实现方法
Mar 22 Javascript
JS获取鼠标坐标的实例方法
Jul 18 Javascript
动态的创建一个元素createElement及删除一个元素
Jan 24 Javascript
JavaScript实现数字数组正序排列的方法
Apr 06 Javascript
简述JavaScript对传统文档对象模型的支持
Jun 16 Javascript
原生js实现日期计算器功能
Feb 17 Javascript
node.js调用Chrome浏览器打开链接地址的方法
May 17 Javascript
基于Bootstrap table组件实现多层表头的实例代码
Sep 07 Javascript
jQuery使用bind函数实现绑定多个事件的方法
Oct 11 jQuery
微信小程序仿通讯录功能
Apr 09 Javascript
JS ES6异步解决方案
Apr 29 Javascript
解析javascript系统错误:-1072896658的解决办法
Jul 08 #Javascript
浅谈JavaScript之事件绑定
Jul 08 #Javascript
JS Map 和 List 的简单实现代码
Jul 08 #Javascript
利用JS实现浏览器的title闪烁
Jul 08 #Javascript
利用js实现遮罩以及弹出可移动登录窗口
Jul 08 #Javascript
使用jquery实现简单的ajax
Jul 08 #Javascript
从数据结构的角度分析 for each in 比 for in 快的多
Jul 07 #Javascript
You might like
require(),include(),require_once()和include_once()的异同
2007/01/02 PHP
PHP中MD5函数使用实例代码
2008/06/07 PHP
php 正则表达式小结
2009/08/31 PHP
PHP抽奖算法程序代码分享
2015/10/08 PHP
php+js实现的拖动滑块验证码验证表单操作示例【附源码下载】
2020/05/27 PHP
(转载)JavaScript中匿名函数,函数直接量和闭包
2007/05/08 Javascript
json简单介绍
2008/06/10 Javascript
JavaScript经典效果集锦
2010/07/06 Javascript
JQuery中each()的使用方法说明
2010/08/19 Javascript
JavaScript实现拼音排序的方法
2012/11/20 Javascript
比较新旧两个数组值得增加和删除的JS代码
2013/10/30 Javascript
javascripit实现密码强度检测代码分享
2013/12/12 Javascript
把文本中的URL地址转换为可点击链接的JavaScript、PHP自定义函数
2014/07/29 Javascript
javascript中substring()、substr()、slice()的区别
2015/08/30 Javascript
详解Vue监听数据变化原理
2017/03/08 Javascript
Vue的实例、生命周期与Vue脚手架(vue-cli)实例详解
2017/12/27 Javascript
VUE2.0中Jsonp的使用方法
2018/05/22 Javascript
layui实现table加载的示例代码
2018/08/14 Javascript
微信小程序如何实现精确的日期时间选择器
2020/01/21 Javascript
vue实践---根据不同环境,自动转换请求的url地址操作
2020/09/21 Javascript
[35:26]DOTA2上海特级锦标赛B组小组赛#2 VG VS Fnatic第三局
2016/02/26 DOTA
[01:00:44]DOTA2上海特级锦标赛主赛事日 - 3 败者组第三轮#1COL VS Alliance第三局
2016/03/04 DOTA
python 正则式使用心得
2009/05/07 Python
重命名批处理python脚本
2013/04/05 Python
Python利用multiprocessing实现最简单的分布式作业调度系统实例
2017/11/14 Python
python爬虫爬取淘宝商品信息(selenum+phontomjs)
2018/02/24 Python
python数据预处理之数据标准化的几种处理方式
2019/07/17 Python
Centos7下源码安装Python3 及shell 脚本自动安装Python3的教程
2020/03/07 Python
python中的django是做什么的
2020/07/31 Python
DELPHI中如何调用API,可举例说明
2014/01/16 面试题
教育科研先进个人材料
2014/01/26 职场文书
节水标语大全
2014/06/11 职场文书
建筑院校毕业生求职信
2014/06/13 职场文书
汉语言文学专业求职信
2014/06/19 职场文书
Python NumPy灰度图像的压缩原理讲解
2021/08/04 Python
Android超详细讲解组件ScrollView的使用
2022/03/31 Java/Android