惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
罗磊的独立博客
博客园 - 【当耐特】
M
MIT News - Artificial intelligence
月光博客
月光博客
博客园_首页
博客园 - 叶小钗
T
Tailwind CSS Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
I
InfoQ
量子位
小众软件
小众软件
爱范儿
爱范儿
The GitHub Blog
The GitHub Blog
IT之家
IT之家
Jina AI
Jina AI
阮一峰的网络日志
阮一峰的网络日志
G
Google Developers Blog
WordPress大学
WordPress大学
人人都是产品经理
人人都是产品经理
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
J
Java Code Geeks
云风的 BLOG
云风的 BLOG
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报

秋水逸冰

丽萨主机:双ISP家宽住宅IP VPS/CN2 GIA精品网/G口大带宽 | 秋水逸冰 Linux Kernel 6.18.x 编译版 | 秋水逸冰 思考未来人与 AI 的关系 | 秋水逸冰 3X-UI 面板安装和使用教程 | 秋水逸冰 Xray-UI 面板安装和使用教程 | 秋水逸冰 WCMP (Windows + Caddy + MariaDB + PHP) Nginx for Windows | 秋水逸冰 Aria2 for Windows | 秋水逸冰 Curl for Windows | 秋水逸冰 Wget for Windows | 秋水逸冰 Windows 11 Enterprise LTSC DD 镜像 Windows Server 2025 Datacenter DD 镜像 重新编译 curl 以支持 HTTP3 | 秋水逸冰 tiny10 和 tiny11 23H2 的 Windows DD 镜像 从 Apache httpd 切换到 Caddy2 LCMP (Linux + Caddy + MariaDB + PHP) Windows 11 Pro for Workstations 22H2 DD 镜像 Shadowsocks 编译版 by Teddysun | 秋水逸冰 适用于 UEFI 启动的多个 Windows 系统 DD 镜像 Linux Kernel 5.15.x 编译版 | 秋水逸冰 制作适用于 WSL 的任意 Linux 镜像 Windows 11 Pro for Workstations 21H2 DD 镜像 Windows 10 Enterprise LTSC DD 镜像 Linux Kernel 5.14.x 编译版 | 秋水逸冰 Linux Kernel 5.13.x 编译版 | 秋水逸冰 Windows Server 2022 Datacenter DD 镜像 在 Windows 10 上安装 Rocky Linux 系统 Linux Kernel 5.12.x 编译版 | 秋水逸冰 Linux Kernel 5.11.x 编译版 | 秋水逸冰 在 Windows 10 上安装 CentOS 系统
Javascript获取URL参数值 | 秋水逸冰
秋水逸冰 · 2013-11-25 · via 秋水逸冰

技术 秋水逸冰 12504浏览 1评论

Javascript

  今天碰到在做一个动态页面的时候,需要用到 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>

这里用到的判断就是,根据 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>

参考链接:
http://www.cnblogs.com/jiekk/archive/2011/06/28/2092444.html

转载请注明:秋水逸冰 » Javascript获取URL参数值