zoukankan      html  css  js  c++  java
  • Javascript获取URL地址变量参数值的方法

    今天碰到在做一个动态页面的时候,需要用到 URL 的参数值来作判断,从而决定某一块内容在当前页面是否显示。例如exampe.html?parm1=xxx&parm2=xxx&parm3=xxx&…,在这里就需要获取.html后面的所有参数的值。
      脑子里的第一个想法是利用“&”符号分割 URL ,从而达到获取参数值的目的。
      同时在网上搜了下,实地操作后,记录如下。

    方法一:
    在某一块内容的 div 标签后面,加入如下 Javascript 代码:

     代码如下 复制代码
     <script type="text/javascript">
     function getQueryString(name) {
      var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
      var r = document.location.search.substr(1).match(reg);
      if (r != null) return unescape(r[2]); return null;
     }
     if(getQueryString("parm1") != null) {
      document.getElementById("xxxx").style.display = "none";
     }
     </script>
     

    更多详细内容请查看:http://www.111cn.net/wy/js-ajax/56850.htm


    这里用到的判断就是,根据 parm1 的值来决定是否显示 id 为 xxxx 这一块 div 区域。
    此处用到的正则表达式解释:
    以&开始或直接以name开始;以&结束或直接结束;name的值是由0到多个不是&的字符组成;”i”是忽略大小写!

    方法二:

    这是一个获取 URL 带 questring 参数的Javascript客户端解决方案。

     代码如下 复制代码
     <script type="text/javascript">
     function GetRequest() {
     var url = location.search; //获取url中"?"符后的字串
     var theRequest = new Object();
     if (url.indexOf("?") != -1) {
      var str = url.substr(1);
      if (str.indexOf("&") != -1) {
       strs = str.split("&");
       for (var i = 0; i < strs.length; i++) {
        theRequest[strs[i].split("=")[0]] = unescape(strs[i].split("=")[1]);
       }
      } else {
       theRequest[str.split("=")[0]] = unescape(str.split("=")[1]);
      }
     }
      return theRequest;
     }
     </script>
     

    调用此函数的方法:

     代码如下 复制代码
     <script type="text/javascript">
      var Request = new Object();
      Request = GetRequest();
      var parm1,parm2,parm3,parmN;
      parm1 = Request['parm1'];
      parm2 = Request['parm2'];
      parm3 = Request['parm3'];
      parmN = Request['parmN'];
     </script>
     

  • 相关阅读:
    002.NFS相关配置项
    001.NFS简介
    002.DNS-BIND简介
    001.DNS原理及配置格式
    002.DHCP配置
    001.DHCP简介
    001.Chrony时间服务器
    博客开篇记载!
    【python-opencv】图像梯度
    【python-opencv】形态转换
  • 原文地址:https://www.cnblogs.com/alibai/p/3514715.html
Copyright © 2011-2022 走看看