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函数来返回正确的中文字符。

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

  • 相关阅读:
    P2788 数学1(math1)- 加减算式
    数据库第三章-学习笔记
    字典序
    P1739 表达式括号匹配
    P3742 umi的函数
    P1765 手机
    P2192 HXY玩卡片
    全排函数c++ next_permutation()
    11.css定义下拉菜单
    10.php引用(&)详解及注意事项
  • 原文地址:https://www.cnblogs.com/zhaoX/p/4660308.html
Copyright © 2011-2022 走看看