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类 from qq
Nov 13 Javascript
js 禁用浏览器的后退功能的简单方法
Dec 10 Javascript
js 获取子节点函数 (兼容FF与IE)
Apr 18 Javascript
JS中怎样判断undefined(比较不错的方法)
Mar 27 Javascript
js脚本获取webform服务器控件的方法
May 16 Javascript
js实现获取焦点后光标在字符串后
Sep 17 Javascript
在Javascript中处理字符串之big()方法的使用
Jun 08 Javascript
浅谈jQuery中的eq()与DOM中element.[]的区别
Oct 28 Javascript
用jquery获取select标签中选中的option值及文本的示例
Jan 25 jQuery
关于vue利用postcss-pxtorem进行移动端适配的问题
Nov 20 Javascript
浅谈Vue3.0新版API之composition-api入坑指南
Apr 30 Javascript
html-webpack-plugin修改页面的title的方法
Jun 18 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中strlen()和mb_strlen()的区别浅析
2014/06/19 PHP
php返回json数据函数实例
2014/10/09 PHP
再谈PHP中单双引号的区别详解
2016/06/12 PHP
使弱类型的语言JavaScript变强势
2009/06/22 Javascript
JS构建页面的DOM节点结构的实现代码
2011/12/09 Javascript
jquery无法设置checkbox选中即没有变成选中状态
2014/03/27 Javascript
javascript arguments使用示例
2014/12/16 Javascript
jQuery对JSON数据进行排序输出的方法
2015/06/24 Javascript
JS截取与分割字符串常用技巧总结
2015/11/10 Javascript
JavaScript中Form表单技术汇总(推荐)
2016/06/26 Javascript
jQuery动态改变多行文本框高度的方法
2016/09/07 Javascript
Bootstrap 过渡效果Transition 模态框(Modal)
2017/03/17 Javascript
详解jQuery中关于Ajax的几个常用的函数
2017/07/17 jQuery
vue中的非父子间的通讯问题简单的实例代码
2017/07/19 Javascript
Vue 表单控件绑定的实现示例
2017/08/11 Javascript
微信小程序 页面滑动事件的实例详解
2017/10/12 Javascript
基于JavaScript中标识符的命名规则介绍
2018/01/06 Javascript
layui表格内放置图片,并点击放大的实例
2019/09/10 Javascript
layui.use模块外部使用其内部定义的js封装函数方法
2019/09/16 Javascript
详解BootStrap表单验证中重置BootStrap-select验证提示不清除的坑
2019/09/17 Javascript
在Python中封装GObject模块进行图形化程序编程的教程
2015/04/14 Python
python脚本监控docker容器
2016/04/27 Python
Java及python正则表达式详解
2017/12/27 Python
Flask之flask-script模块使用
2018/07/26 Python
tensorflow saver 保存和恢复指定 tensor的实例讲解
2018/07/26 Python
BAILEY 44官网:美国制造的女性服装
2019/07/01 全球购物
英国独特家具和家庭用品购物网站:Cuckooland
2020/08/30 全球购物
.NET面试题:什么是反射
2016/09/30 面试题
建筑专业自我鉴定
2013/10/22 职场文书
教师业务学习制度
2014/01/25 职场文书
大学生自我鉴定评语
2014/01/27 职场文书
个人整改措施书面材料
2014/10/24 职场文书
机关单位工作失职检讨书
2014/11/20 职场文书
幼儿园小班家长评语
2014/12/30 职场文书
2015年党建工作目标责任书
2015/05/08 职场文书
tp5使用layui实现多个图片上传(带附件选择)的方法实例
2021/11/17 PHP