Javascript - HTML的request类


Posted in Javascript onJuly 15, 2006

做中英转换的时候,要准确的获取参数并取出,所以做了一个简单的html中用js获取当取地址栏的一个Object。
里面有三个方法:
1、request.QueryString("参数")//获取指定参数,返回字符串;
2、request.QueryStrings();//获取全部参数,并返回数组;
3、request.setQuery("参数","参数的值");//如果当前地址栏有此参数,那么将更新此参数,否则返回一个新的地址栏参数字符串。
例如:
当前地址栏参数字符串为:?name=a&site=never_online

alert(request.setQuery("name","blueDestiny"))

如果地址栏参数中有"name",那么返回?name=blueDestiny&site=never_online

setQuery方法有自动追加参数的功能。如:
当前地址栏参数字符串为:?site=never_online
alert(request.setQuery("name","blueDestiny"))
则返回?site=never_online&name=blueDestiny

同理,如果地址栏没有参数,也会自动追加参数
alert(request.setQuery("name","blueDestiny"))
返回?name=blueDestiny

<SCRIPT LANGUAGE="JavaScript">
<!--
// author: never-online
// web: never-online.net
var request = {
 QueryString : function(val) {
 var uri = window.location.search;
 var re = new RegExp("" +val+ "\=([^\&\?]*)", "ig");
 return ((uri.match(re))?(uri.match(re)[0].substr(val.length+1)):null);
 },
 QueryStrings : function() {
 var uri = window.location.search;
 var re = /\w*\=([^\&\?]*)/ig;
 var retval=[];
 while ((arr = re.exec(uri)) != null)
 retval.push(arr[0]);
 return retval;
 },
 setQuery : function(val1, val2) {
 var a = this.QueryStrings();
 var retval = "";
 var seted = false;
 var re = new RegExp("^" +val1+ "\=([^\&\?]*)$", "ig");
 for(var i=0; i<a.length; i++) {
 if (re.test(a[i])) {
 seted = true;
 a[i] = val1 +"="+ val2;
 }
 }
 retval = a.join("&");
 return "?" +retval+ (seted ? "" : (retval ? "&" : "") +val1+ "=" +val2);
 }
}
alert(request.setQuery("e","b"))
//-->
</SCRIPT>

Javascript 相关文章推荐
动态为事件添加js代码示例
Feb 15 Javascript
javascript中字符串拼接需注意的问题
Jul 13 Javascript
利用JS实现浏览器的title闪烁
Jul 08 Javascript
JavaScript实现自动对页面上敏感词进行屏蔽的方法
Jul 27 Javascript
JS实现按比例缩放图片的方法(附C#版代码)
Dec 08 Javascript
JavaScript学习笔记之数组求和方法
Mar 23 Javascript
浅谈js和css内联外联注意事项
Jun 30 Javascript
vue2.0结合DataTable插件实现表格动态刷新的方法详解
Mar 17 Javascript
浅谈vue中慎用style的scoped属性
Nov 28 Javascript
基于node打包可执行文件工具_Pkg使用心得分享
Jan 24 Javascript
封装微信小程序http拦截器过程解析
Aug 13 Javascript
基于JavaScript获取base64图片大小
Oct 18 Javascript
表单的一些基本用法与技巧
Jul 15 #Javascript
popdiv
Jul 14 #Javascript
游戏人文件夹程序 ver 4.03
Jul 14 #Javascript
游戏人文件夹程序 ver 3.0
Jul 14 #Javascript
表单提交验证类
Jul 14 #Javascript
如何实现浏览器上的右键菜单
Jul 10 #Javascript
载入进度条 效果
Jul 08 #Javascript
You might like
c#中的实现php中的preg_replace
2009/12/21 PHP
基于PHP array数组的教程详解
2013/06/05 PHP
php ajax实现文件上传进度条
2016/03/29 PHP
JavaScript的Cookies
2008/01/16 Javascript
javascript 流畅动画实现原理
2009/09/08 Javascript
JS删除数组元素的函数介绍
2013/03/27 Javascript
js中的getAttribute方法使用示例
2014/08/01 Javascript
JQuery实现动态表格点击按钮表格增加一行
2014/08/24 Javascript
使用C++为node.js写扩展模块
2015/04/22 Javascript
JS Array.slice 截取数组的实现方法
2016/01/02 Javascript
浅析JavaScript中命名空间namespace模式
2016/06/22 Javascript
鼠标拖动改变DIV等网页元素的大小的实现方法
2017/07/06 Javascript
微信小程序实现点击按钮修改字体颜色功能【附demo源码下载】
2017/12/05 Javascript
JavaScript使用Math.random()生成简单的验证码
2019/01/21 Javascript
小程序云开发教程如何使用云函数实现点赞功能
2019/05/18 Javascript
解决VUE项目使用Element-ui 下拉组件的验证失效问题
2020/11/07 Javascript
[40:57]TI4 循环赛第二日 iG vs EG
2014/07/11 DOTA
Python中encode()方法的使用简介
2015/05/18 Python
快速了解Python开发中的cookie及简单代码示例
2018/01/17 Python
Python 字符串与二进制串的相互转换示例
2018/07/23 Python
Scrapy框架爬取西刺代理网免费高匿代理的实现代码
2019/02/22 Python
在django中自定义字段Field详解
2019/12/03 Python
Python利用for循环打印星号三角形的案例
2020/04/12 Python
Python Selenium异常处理的实例分析
2021/02/28 Python
德国狗狗用品在线商店:Schecker
2017/03/17 全球购物
Lancome兰蔻官方旗舰店:来自法国的世界知名美妆品牌
2018/06/14 全球购物
澳大利亚珍珠首饰购物网站:Vayo Pearls
2019/03/11 全球购物
应届毕业生的自我鉴定
2013/11/13 职场文书
弘扬雷锋精神活动演讲稿
2014/03/04 职场文书
车辆工程专业求职信
2014/06/14 职场文书
借条格式范本
2015/05/25 职场文书
小学生手册家长意见
2015/06/03 职场文书
高中数学课堂教学反思
2016/02/18 职场文书
Oracle笔记
2021/04/05 Oracle
python周期任务调度工具Schedule使用详解
2021/11/23 Python
Spring Boot DevTools 全局配置学习指南
2022/03/31 Java/Android