zoukankan      html  css  js  c++  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函数来返回正确的中文字符。

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

  • 相关阅读:
    Windows永久修改pip安装源
    MySQL 超键 候选键 主键 外键是什么
    scrapy中间件
    crawlspider
    scrapy
    MongoDB 命令
    如何反扒
    表前缀sw_时
    自增序号,而且默认变量就是$i,也就是说在你的volist标签之内,可以直接使用$i
    html,if标签使用
  • 原文地址:https://www.cnblogs.com/zhaoX/p/4660308.html
Copyright © 2011-2022 走看看