你的位置:首页 > Java教程

[Java教程]使用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函数来返回正确的中文字符。

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

 




去海南旅游最佳时间海南旅游线路报价海南旅游攻略大全海南旅游路线推荐海南自驾游攻略广州到森波拉奇妙世界自驾怎么走?广州到佛冈森波拉开车多长时间? 浙江西塘好玩吗? 都峤山森林公园游玩有几个小时?广西容县都峤山吃饭方便吗? 森波拉奇妙世界五一还有樱花吗?佛冈森波拉五一赏花攻略? 深圳海洋世界最新门票价格?深圳小梅沙小孩子门票怎么收费? 2015三八节长鹿农庄女士免费吗?顺德长鹿农庄3.8妇女节门票价格? 喜气洋洋迎元宵 2015东湖灯会赏灯攻略 顺德长鹿农庄元宵节门票多少钱?长鹿农庄元宵节门票价格? 桂林阳朔在哪里?什么时候去最好? Apec长假赴海参崴必看景点推荐 春季出游要注意什么? 哪些路线可以进九寨沟?沿途景点有哪些? 马尔代夫沙滩游泳要注意什么事项? 马尔代夫有鲨鱼吗?浮潜安全吗? 马尔代夫11、12月天气怎么样? 马尔代夫浮潜要注意些什么? IDT72V3632L15PF Datasheet IDT72V3632L15PF Datasheet IDT5V2305PGI8 Datasheet IDT5V2305PGI8 Datasheet IDT5V2310NRGI Datasheet IDT5V2310NRGI Datasheet 黑龙江跟团香港四天三晚游 黑龙江跟团香港四天三晚游 黑龙江跟团香港四天三晚游 长春跟团香港两天一晚游 长春跟团香港两天一晚游 长春跟团香港两天一晚游 四平到香港3天旅游 四平到香港3天旅游 四平到香港3天旅游