querystring的处理类

 
  
/*
* 对于querystring(形如?userid=222&username=23432sdf)的处理
*/
function PageQuery(q) {
if (q.length > 1 )
this .q = q.substring( 1 , q.length);
else
this .q = null ;
// 定义键值对
this .keyValuePairs = new Array();
if ( this .q) {
var infos = this .q.split( " & " );
for ( var i = 0 ; i < infos.length; i ++ ) {
// 将参数添加到数组中
this .keyValuePairs.push(infos[i]);
}
}
this .getKeyValuePairs = function () { return this .keyValuePairs };

// 获得当前参数的个数
this .getLength = function () { return this .keyValuePairs.length };

// 根据输入的key,找出相应的value
this .getValue = function (s) {
var length = this .getLength();
for ( var i = 0 ; i < length; i ++ ) {
if ( this .keyValuePairs[i].split( " = " )[ 0 ] == s)
return this .keyValuePairs[i].split( " = " )[ 1 ];
}
};

// 获得所有参数
this .getParameters = function () {
var parameters = new Array();
var length = this .getLength();
for ( var i = 0 ; i < length; i ++ ) {
parameters.push(
this .keyValuePairs[i].split( " = " )[ 0 ]);
}
return parameters;
}
}

function analysisUrl() {
// 可以用this.location.search取得?后面的参数
//
alert(this.location.search);
var page = new PageQuery( " ?userid=234&username=sdfsd " );
// alert(page.getLength());
alert(page.getValue( " username " ));
var params = page.getParameters();
for ( var i = 0 ; i < params.length; i ++ ) {
alert(params[i]);
}
}
< / script>
通过以上的例子验证,这个类别是可以用的。

转载于:https://www.cnblogs.com/sinianyufang/archive/2011/03/29/1998791.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值