JS自定义功能函数实现动态添加网址参数修改网址参数值


Posted in Javascript onAugust 02, 2013

无论是前端开发还是后台设计,很多时候开发人员都需要获取当前或目标网址的相关信息。这个已有现成的内置对象属性可以直接调用了(下面是获取当前页面的参考代码)

<script type="text/javascript"> 
thisURL = document.URL; 
thisHREF = document.location.href; 
thisSLoc = self.location.href; 
thisDLoc = document.location; 
strwrite = " thisURL: [" + thisURL + "]<br>" 
strwrite += " thisHREF: [" + thisHREF + "]<br>" 
strwrite += " thisSLoc: [" + thisSLoc + "]<br>" 
strwrite += " thisDLoc: [" + thisDLoc + "]<br>" 
document.write( strwrite ); 
</script>

但有时候我们需要改变目前网址的参数/参数值,这时候大家会如何处理呢?一般应该都会先通过获取所有参数的信息,然后再根据实际需求来对某一参数进行修改。没错!根据这一原理,今天就给大家分享一下个人在开发中封装的功能函数。
//=============== 改变网址的参数值 ================
function ChangeURLParm(Turl,Parm,PValue,ClearParm){ 
//Turl: 网址 
//Parm: 参数 
//PValue: 参数值 
//ClearParm: 要清除的参数 
var URL,Parms,ParmsArr,IsExist; 
var NewURL = Turl;//window.location.href 
IsExist = false; 
with(Turl){ 
if(indexOf('?')>0){ 
URL = substr(0,indexOf('?'));//不包含参数 
Parms = substr(indexOf('?')+1,length);//参数 
} 
else{ 
URL = Turl; 
Parms = ''; 
} 
} 
if (Parms!=''){ 
var i; 
ParmsArr = Parms.split("&"); 
for(i=0;i<=ParmsArr.length-1;i++){ 
if (String(Parm).toUpperCase()==String(ParmsArr[i].split("=")[0]).toUpperCase()){//原来有参数Parm则改变其值 
ParmsArr[i] = Parm + "=" + PValue; 
IsExist = true; 
if (String(ClearParm) ==""){ 
break; 
} 
} 
else if ( (String(ClearParm)!="") && (String(ClearParm).toUpperCase()==String(ParmsArr[i].split("=")[0])).toUpperCase() ){//去掉参数ClearParm的值 
ParmsArr[i] = ClearParm + "="; 
} 
} for(i=0;i<=ParmsArr.length-1;i++){ 
if(i==0){ 
Parms = ParmsArr[i]; 
} 
else{ 
Parms = Parms + "&" + ParmsArr[i]; 
} 
} 
NewURL = URL + "?" + Parms; 
if (!IsExist){ 
NewURL = NewURL + "&" + Parm + "=" + PValue; 
} 
} 
else{ 
NewURL = URL + "?" + Parm + "=" + PValue; 
} 
return NewURL; 
}

其实这功能在实际应用中很好使,在分页跳转、多条件查询搜索等功能中尤为突出。
Javascript 相关文章推荐
在Javascript中定义对象类别
Dec 22 Javascript
JavaScript实现QueryString获取GET参数的方法
Jul 02 Javascript
js 触发select onchange事件代码
Mar 20 Javascript
Node.js中的模块机制学习笔记
Nov 04 Javascript
localResizeIMG先压缩后使用ajax无刷新上传(移动端)
Aug 11 Javascript
jquery拖拽效果完整实例(附demo源码下载)
Jan 14 Javascript
jQuery模仿单选按钮选中效果
Jun 24 Javascript
JavaScript创建对象的七种方式全面总结
Aug 21 Javascript
Vue中mintui的field实现blur和focus事件的方法
Aug 25 Javascript
js 闭包深入理解与实例分析
Mar 19 Javascript
微信小程序 scroll-view的使用案例代码详解
Jun 11 Javascript
vue 使用rules对表单字段进行校验的步骤
Dec 25 Vue.js
jQuery function的正确书写方法
Aug 02 #Javascript
jquery 层次选择器siblings与nextAll的区别介绍
Aug 02 #Javascript
js 固定悬浮效果实现思路代码
Aug 02 #Javascript
仿新浪微博登陆邮箱提示效果的js代码
Aug 02 #Javascript
页面右下角弹出提示框示例代码js版
Aug 02 #Javascript
js获取IP和PcName(IE)在vs中可用
Aug 02 #Javascript
js获取location.href的参数实例代码
Aug 02 #Javascript
You might like
php 中的4种标记风格介绍
2012/05/10 PHP
PHP解析RSS的方法
2015/03/05 PHP
PHP图片加水印实现方法
2016/05/06 PHP
PHP实现的激活用户注册验证邮箱功能示例
2017/06/06 PHP
解密效果
2006/06/23 Javascript
js 编程笔记 无名函数
2011/06/28 Javascript
不用锚点也可以平滑滚动到页面的指定位置实现代码
2013/05/08 Javascript
浅析document.ready和window.onload的区别讲解
2013/12/18 Javascript
js操作iframe父子窗体示例
2014/05/22 Javascript
JsRender for object语法简介
2014/10/31 Javascript
node.js中的events.emitter.once方法使用说明
2014/12/10 Javascript
jQuery中element选择器用法实例
2014/12/29 Javascript
JavaScript判断undefined类型的正确方法
2015/06/30 Javascript
js实现图片轮播效果
2015/12/19 Javascript
jQuery ajax调用后台aspx后台文件的两种常见方法(不是ashx)
2016/06/28 Javascript
JavaScript从0开始构思表情插件
2016/07/26 Javascript
JavaScript使用键盘输入控制实现数字验证功能
2016/08/19 Javascript
Node.js+Express+MySql实现用户登录注册功能
2017/07/10 Javascript
vue实现局部刷新的实现示例
2019/04/16 Javascript
详解JavaScript的数据类型以及数据类型的转换
2019/04/20 Javascript
Bootstrap实现模态框效果
2019/09/30 Javascript
vue3.0 自适应不同分辨率电脑的操作
2021/02/06 Vue.js
[29:59]完美世界DOTA2联赛PWL S3 Forest vs access 第二场 12.11
2020/12/13 DOTA
Python中的复制操作及copy模块中的浅拷贝与深拷贝方法
2016/07/02 Python
基于python中__add__函数的用法
2019/11/25 Python
Python实现ATM系统
2020/02/17 Python
在Windows上安装和配置 Jupyter Lab 作为桌面级应用程序教程
2020/04/22 Python
Python xmltodict模块安装及代码实例
2020/10/05 Python
Pycharm配置autopep8实现流程解析
2020/11/28 Python
澳大利亚排名第一的在线酒类商店:MyBottleShop
2018/04/26 全球购物
文史专业毕业生自荐信
2013/11/17 职场文书
狼和鹿教学反思
2014/02/05 职场文书
村党支部群众路线教育实践活动对照检查材料
2014/09/26 职场文书
党员倡议书
2015/01/19 职场文书
《彼得与狼》教学反思
2016/02/20 职场文书
导游词之阆中古城
2019/12/23 职场文书