首页 > 网站 > WEB开发 > 正文

使用Javascript获得网页中通过GET方法提交的参数

2024-04-27 14:06:48
字体:
来源:转载
供稿:网友

使用javascript获得网页中通过GET方法提交的参数

下面我将写出一个函数,用来获取GET方法提交的参数

function getParameter(parameterName){    var string = window.location.search;    var indexStart = string.indexOf(parameterName+"=");    if(indexStart==-1)        return false;    var result = string.slice(indexStart+parameterName.length+1);    var indexEnd = result.indexOf("&");    if(indexEnd!=-1)        result = result.slice(0,indexEnd);        return decodeURI(result);}
完整代码

下面我将一步步讲解每步的作用。

假设我们的URL是www.****.com?a=1&bc=23&d=5,而我们想要取bc的值

var string = window.location.search;

  这一步,将URL中“?”后面的字符串,也就是"a=1&bc=23&d=5"保存在变量string中。

var indexStart = string.indexOf(parameterName+"=");if(indexStart==-1)     return false;

  这一步,将寻找"bc="在string中首次出现的位置,如果没有找到"bc=",那么将结束函数并返回false。

var result = string.slice(indexStart+parameterName.length+1);

  这次,我们将"bc="后面的所有字符都保存在result变量中。当然这只是我们最终结果的开头部分。

var indexEnd = result.indexOf("&");    if(indexEnd!=-1)        result = result.slice(0,indexEnd);

  这次我们来寻找result中结束的地方,通常来讲都是都是"&"符号作为结束的地方。当然,如果本身就是在string中作为最后一个参数,比如"d=5"这个,那么我们之前的result就已经是正确的结果了,不需要这一步了。

return decodeURI(result);

  最后我们返回result作为最终的结果。由于如果参数中又中文的话,会出现乱码,所以我们在这里加上一个decodeURI函数来返回正确的中文字符。

好了,到这里,我们就已经大功告成了!


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表