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 相关文章推荐
JQuery在光标位置插入内容的实现代码
Jun 18 Javascript
用jQuery模拟页面加载进度条的实现代码
Dec 19 Javascript
asp.net网站开发中用jquery实现滚动浏览器滚动条加载数据(类似于腾讯微博)
Mar 14 Javascript
JavaScript 图像动画的小demo
May 23 Javascript
js获取当前页面路径示例讲解
Jan 08 Javascript
AngularJS入门教程(零):引导程序
Dec 06 Javascript
JS实现在网页中弹出一个输入框的方法
Mar 03 Javascript
JavaScript-html标题滚动效果的简单实现
Sep 08 Javascript
js通过Date对象实现倒计时动画效果
Oct 27 Javascript
js 索引下标之li集合绑定点击事件
Jan 12 Javascript
angularJs提交文本框数据到后台的方法
Oct 08 Javascript
AngularJS 监听变量变化的实现方法
Oct 09 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
一个PHP数组应该有多大的分析
2009/07/30 PHP
基于php伪静态的实现详细介绍
2013/04/28 PHP
jQuery使用手册之二 DOM操作
2007/03/24 Javascript
js身份证验证超强脚本
2008/10/26 Javascript
JS鼠标事件大全 推荐收藏
2011/11/01 Javascript
解析javascript 数组以及json元素的添加删除
2013/06/26 Javascript
HTML+CSS+JS实现完美兼容各大浏览器的TABLE固定列
2015/04/26 Javascript
jquery实现全屏滚动
2015/12/28 Javascript
Jsonp 关键字详解及json和jsonp的区别,ajax和jsonp的区别
2015/12/30 Javascript
javascript运动框架用法实例分析(实现放大与缩小效果)
2016/01/08 Javascript
基于JavaScript Array数组方法(新手必看篇)
2016/08/20 Javascript
第一次接触神奇的Bootstrap
2016/10/14 Javascript
javascript 数组去重复(在线去重工具)
2016/12/17 Javascript
Vue.js实现简单动态数据处理
2017/02/13 Javascript
bootstrap轮播图示例代码分享
2017/05/17 Javascript
jquery+css3实现熊猫tv导航代码分享
2018/02/12 jQuery
jQuery HTML获取内容和属性操作实例分析
2020/05/20 jQuery
[01:07]2015国际邀请赛 中国区预选赛精彩回顾
2015/06/15 DOTA
python脚本设置系统时间的两种方法
2016/02/21 Python
利用ctypes提高Python的执行速度
2016/09/09 Python
python获取指定时间差的时间实例详解
2017/04/11 Python
Python操作mysql数据库实现增删查改功能的方法
2018/01/15 Python
Python简单过滤字母和数字的方法小结
2019/01/09 Python
pytorch torch.nn.AdaptiveAvgPool2d()自适应平均池化函数详解
2020/01/03 Python
python检查目录文件权限并修改目录文件权限的操作
2020/03/11 Python
美国地毯购买网站:Rugs USA
2019/02/23 全球购物
UNOde50美国官网:西班牙珠宝品牌
2020/08/15 全球购物
工业学校毕业生自荐信范文
2014/01/03 职场文书
乡镇消防工作实施方案
2014/03/27 职场文书
乡镇干部个人对照检查材料思想汇报
2014/10/04 职场文书
大学生上课迟到检讨书
2014/10/15 职场文书
2015年社区居委会工作总结
2015/05/18 职场文书
2016年全国爱眼日宣传教育活动总结
2016/04/05 职场文书
CSS3 制作的图片滚动效果
2021/04/14 HTML / CSS
晶体管单管来复再生式收音机
2021/04/22 无线电
MySQL中int (10) 和 int (11) 的区别
2022/01/22 MySQL