Javascript - HTML的request类

 更新时间:2006年07月15日 00:00:00   作者:  
做中英转换的时候,要准确的获取参数并取出,所以做了一个简单的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>

相关文章

  • JS实现的集合去重,交集,并集,差集功能示例

    JS实现的集合去重,交集,并集,差集功能示例

    这篇文章主要介绍了JS实现的集合去重,交集,并集,差集功能,结合实例形式分析了javascript基于数组实现的集合去重、交集、并集、差集等相关实现技巧,需要的朋友可以参考下
    2018-03-03
  • javascript如何合并多层级数组

    javascript如何合并多层级数组

    这篇文章主要介绍了javascript如何合并多层级数组问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01
  • js+HTML5基于过滤器从摄像头中捕获视频的方法

    js+HTML5基于过滤器从摄像头中捕获视频的方法

    这篇文章主要介绍了js+HTML5基于过滤器从摄像头中捕获视频的方法,涉及javascript基于html5元素操作多媒体的使用技巧,需要的朋友可以参考下
    2015-06-06
  • 利用js判断数据是否是数组或字符串的常见方法

    利用js判断数据是否是数组或字符串的常见方法

    这篇文章主要给大家介绍了关于利用js判断数据是否是数组或字符串的常见方法,其实有很多方法可以判断数据是否是数组或字符串,需要的朋友可以参考下
    2023-07-07
  • Javascript之深入浅出prototype

    Javascript之深入浅出prototype

    本文将深入浅出的对Javascript中的prototype进行详细介绍。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-02-02
  • JavaScript转换与解析JSON方法实例详解

    JavaScript转换与解析JSON方法实例详解

    这篇文章主要介绍了JavaScript转换与解析JSON方法,实例分析了JavaScript解析json的技巧,并附带分析了jQuery解析与转换json的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-11-11
  • 整理关于Bootstrap列表组的慕课笔记

    整理关于Bootstrap列表组的慕课笔记

    这篇文章主要为大家整理了关于Bootstrap列表组的慕课笔记,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • JavaScript进阶练习及简单实例分析

    JavaScript进阶练习及简单实例分析

    下面小编就为大家带来一篇JavaScript进阶练习及简单实例分析。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • JavaScript图片懒加载的优化方法详解

    JavaScript图片懒加载的优化方法详解

    这篇文章主要为大家详细介绍了JavaScript图片懒加载的优化方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-03-03
  • JavaScript中的null和undefined区别介绍

    JavaScript中的null和undefined区别介绍

    这篇文章主要介绍了JavaScript中的null和undefined区别介绍,JavaScript中存在2个代表信息不存在的特殊值:null和undefined,本文主要讲解它们的区别,需要的朋友可以参考下
    2015-01-01

最新评论