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 相关文章推荐
表单填写时用回车代替TAB的实现方法
Oct 09 Javascript
使用javaScript动态加载Js文件和Css文件
Oct 24 Javascript
JavaScript实现Base64编码转换
Apr 23 Javascript
javascript实现的全国省市县无刷新多级关联菜单效果代码
Aug 01 Javascript
BootStrap Validator使用注意事项(必看篇)
Sep 28 Javascript
js HTML5多媒体影音播放
Oct 17 Javascript
Bootstrap树形菜单插件TreeView.js使用方法详解
Nov 01 Javascript
canvas快速绘制圆形、三角形、矩形、多边形方法介绍
Dec 29 Javascript
详解Javascript 中的 class、构造函数、工厂函数
Dec 20 Javascript
支付宝小程序tabbar底部导航
Nov 06 Javascript
解决vue+elementui项目打包后样式变化问题
Aug 03 Javascript
js观察者模式的弹幕案例
Nov 23 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
PHP 常见郁闷问题答解
2006/11/25 PHP
php 批量替换程序的具体实现代码
2013/10/04 PHP
php 模拟 asp.net webFrom 按钮提交事件的思路及代码
2013/12/02 PHP
简单谈谈php中ob_flush和flush的区别
2014/11/27 PHP
php获取文件名后缀常用方法小结
2015/02/24 PHP
PHP数学运算与数据处理实例分析
2016/04/01 PHP
PHPCMS2008广告模板SQL注入漏洞修复
2016/10/11 PHP
Jquery index()方法 获取相应元素索引值
2012/10/12 Javascript
javascript加号"+"的二义性说明
2013/03/04 Javascript
javascript与有限状态机详解
2014/05/08 Javascript
jQuery对象的selector属性用法实例
2014/12/27 Javascript
JavaScript将一个数组插入到另一个数组的方法
2015/03/19 Javascript
JavaScript希尔排序、快速排序、归并排序算法
2016/05/08 Javascript
EasyUi 打开对话框后控件赋值及赋值后不显示的问题解决办法
2017/01/19 Javascript
Bootstrap 下拉多选框插件Bootstrap Multiselect
2017/01/22 Javascript
vue父子组件的数据传递示例
2017/03/07 Javascript
解决vue-cli webpack打包开启Gzip 报错问题
2019/07/24 Javascript
Vue函数式组件的应用实例详解
2019/08/30 Javascript
Python中方法链的使用方法
2016/02/23 Python
Python 40行代码实现人脸识别功能
2017/04/02 Python
修复 Django migration 时遇到的问题解决
2018/06/14 Python
Django压缩静态文件的实现方法详析
2018/08/26 Python
对python 判断数字是否小于0的方法详解
2019/01/26 Python
讲解Python3中NumPy数组寻找特定元素下标的两种方法
2019/08/04 Python
使用Python第三方库pygame写个贪吃蛇小游戏
2020/03/06 Python
基于html和CSS3制作酷炫的导航栏
2015/09/23 HTML / CSS
联想加拿大官方网站:Lenovo Canada
2018/04/05 全球购物
法学研究生自我鉴定范文
2013/12/04 职场文书
财务主管自我鉴定
2014/01/17 职场文书
村班子对照检查材料
2014/08/18 职场文书
2014学习十八届四中全会精神思想汇报范文
2014/10/23 职场文书
婚礼答谢礼品
2015/01/20 职场文书
学校教代会开幕词
2016/03/04 职场文书
小学2016年“我们的节日·重阳节”活动总结
2016/04/01 职场文书
Vue实现下拉加载更多
2021/05/09 Vue.js
vue修饰符.capture和.self的区别
2022/04/22 Vue.js