静态网站如何获取Get参数,通过js获取url的参数数据的实现方式

时间: 2017-10-26阅读: 2591标签: url

不使用动态语言php,java等,直接通过js获取链接中传递的get数据的方法总结。下面给大家说一下用JavaScript在静态页面上接受Get参数的方法,其实很简单 只要用户打开的页面url后带有参数。而JavaScript可以获取当前页面的url 只要对获取下来的url进行简单地解析即可。


方法一、正则表达式

推荐使用,方便快捷的一种方式,代码如下:

;(function(w) {
	var Plugin ={//默认为match
		getUrlParam:function(name) {//获取url中的参数
			var reg = new RegExp('(^|&?)' + name + '=([^&]*)(&|$)', 'i');
		    var r = window.location.href.substr(1).match(reg);
		    if (r != null) {
		        return unescape(r[2]);//如果参数有中文使用decodeURl解码返回
		    }
		    return undefined;
		},
	};
	w.G=Plugin;
})(window);

使用:console.log(G.getUrlParam('name')),就可获取参数name的值

注意:unescape()的方式返回,在获取中文参数的时候,获取到的值是乱码的,解决方法:将解码方式unscape换为decodeURI。出现的原因:原因:浏览器会将url中的中文参数进行encodeURI编码,所以要通过js使用decodeURI进行解码


方法二、传统数组方式

通过返回数组的形式获取,代码如下

function get(){
	let u=window.location.href //获取当前页面的url
	let len=u.length //获取url的长度
	let offset=u.indexOf("?") //设置参数字符串开始的位置
	let info=u.substr(offset,len) //取出参数字符串 这里会获得类似“id=1”这样的字符串
	return info.split("=") //对获得的参数字符串按照“=”进行分割
}

使用:var g=get();g[0]获取Get的第一个参数


方法三

function GetRequest() {
   var url = location.search; //获取url中"?"符后的字串
   var theRequest = new Object();
   if (url.indexOf("?") != -1) {
      var str = url.substr(1);
      strs = str.split("&");
      for(var i = 0; i < strs.length; i ++) {
         theRequest[strs[i].split("=")[0]]=unescape(strs[i].split("=")[1]);
      }
   }
   return theRequest;
}

使用:GetRequest()['name']

站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

链接: http://www.fly63.com/article/detial/13

react监听URL的正确方式

addEventListener之后一定要remove,否则跳转路由后,原有的事件又没消除,会导致注册了越来越多的事件;另外,removeEventListener的第二个参数指向的函数

怎样获取当前网页的URL?

document.documentURI,document.URL两个属性的作用是完全一样的. 都是返回一个当前网页URL的字符串; document.documentURI 继承自Document接口, 适用于所有文档;

如何理解data URL?

canvas有一个非常常用的方法canvas.toDataURL(),它会将canvas转化为data URL的格式。通常情况下这个data URL的类型为image。

URL和URI

URL只是URI的一个子集,http://abc.jsp就是一个URL,URI 是 Uniform Resource Identifier 的缩写。RFC2396 分别对这 3 个单词进行了如下定义。Uniform规定统一的格式可方便处理多种不同类型的资源

Js获取URL的协议?

想要获取当前URL的协议,可以使用JavaScript的location.protocol属性。 网络协议定义了网络设备之间通信的规则和约定。通过采用这些规则,两个设备可以相互通信并且可以交换信息。http:超文本传输协议(HTTP)是分布式系统的应用协议。

聊一聊 JavaScript 的 URL 对象是什么?

如果我们自己编写从URL中分析和提取元素的代码,那么有可能会比较痛苦和麻烦。程序员作为这个社会中最“懒”的群体之一,无休止的重复造轮子必然是令人难以容忍的,所以大多数浏览器的标准库中都已经内置了URL对象。

Node中url模块的使用

url.parse(url_str[,boolean])用于将url字符串转为对象格式。该方法有两个参数,第一个参数为url字符串,第二个为布尔值,可以不写,表示是否也将query转为对象

解决window.location.href跳转无效问题解决办法

原因是 a标签的href跳转会执行在window.location.href设置的跳转之前:如果是表单form的话 也会先执行form提交。提交之后 就已经不在当前页面了。所以 window.location.href无效。

URL和URI的区别

URL的格式由下列三部分组成:协议(或称为服务方式);存有该资源的主机IP地址(有时也包括端口号);主机资源的具体地址,如目录和文件名等。URI,统一资源标识符:主机名。存放资源的自身的名称,由路径表示

短网址(short URL)系统的原理及其实现

做一个短链接生成器,可以将一个长链接缩短成一个短链接。就是把普通网址,转换成比较短的网址。好处不言而喻。短、字符少、美观、便于发布、传播。

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!