js截取url问号前面_JS获取URL中问号后面参数值
该功能已经在 ez.js 更好的实现,本文的方法依旧可用,但将不再更新。
ez.js 提供了一些常用的 js 方法。
支持以下几种传参的形式:
使用井号#:
http://x.x.com/x.html#id=1&name=Mukti
使用问号?:
http://x.x.com/x.html?id=1&name=Mukti
使用井号#并且不需要参数名直接带参数用中横线分隔:
http://x.x.com/x.html#1-Mukti-参数3-参数4
使用井号#并且不需要参数名直接带参数用左斜杠分隔:
http://x.x.com/x.html#1/Mukti/参数3/参数4
同时使用井号#和问号?:
http://x.x.com/x.html#id=1&name=Mukti?type=test&page=1
http://x.x.com/x.html#1-Mukti?type=test&page=1
下面是函数代码:
[code lang=”javascript”]
function getUrlParam(a,b,z){
/*
url = http://xxx.xxx.com/x.html#id-test?id=1&test=2
x.html#?
英文问号,均为空。
“#”在“?”前面才有效,否则只取到“#”
*/
if(window.location.href.indexOf("#") < 0 && window.location.href.indexOf("?") < 0){ window[a] = window[b] = {}; return; } var x = {}, y = {}; // 如果“#”后面有内容,那么按“?”分开,否则h[0] = ”, h[1] = ” var h = window.location.href.split("#")[1] ? window.location.href.split("#")[1].split("?") : [null, window.location.href.split("#")[0].split("?")[1]]; var n = h[1] ? h[1].split("&") : ""; if(h[0] && h[0].indexOf("=") > 0){
var m = h[0].split("&");
for(var i=0;i
var l = m[i].split("=");
x[l[0]] = l[1];
}
}else{
var m = h[0] ? h[0].split(z) : ”;
for(var i=0;i
x[i] = m[i];
}
}
for(var i=0;i
var l = n[i].split("=");
y[l[0]] = l[1];
}
window[a] = x;
window[b] = y;
}
[/code]
使用方法:
getUrlParam()接受三个参数:
第一个参数假设我们传的是G,那么会将井号#后面的参数赋值给对象G(注意这个G将会是window全局对象,大家不要出现命名冲突),比如url中#id=1&name=Mukti,那么我们就可以通过G[‘id’]或者G.id来取得id的值,同理,用G.name取得name的值。
第二个参数假设我们传的是P,那么会取得?后面的参数,比如url中?id=1&name=Mukti,我们可以使用P.id取得id的值。
第三个参数是井号#后面参数省略了参数名的时候使用什么样的分隔符。比如url中#1-Mukti-参数3,那么我们第三个参数就要使用中横线“-”,即getUrlParam(“G”,”P”,”-“),这样我们可以通过G[1],G[2],G[3],分别取得1,Mukti,参数3这三个值。通用你可以使用任意没有歧义的分隔符,比如“|”,url是这样:#1|Mukti|param3,函数参数就要这么写:getUrlParam(“G”,”P”,”|”)。没有歧义,也就是说最好不要用“&”。
但是请注意:问号?后面是不能使用省略参数名的形式,比如?1/Mukti/param3,这样是错误的。
js截取url问号前面_JS获取URL中问号后面参数值相关推荐
- nodejs 获取get中携带的参数值
nodejs 获取get中携带的参数值 demo功能: 通过java端get请求向nodejs端发送数据,nodejs接收数据,并将其值打印出来: nodejs端: var http = requir ...
- js 获取url问号前_js获取历史url
js获取历史url以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 一.JS高手呢,获取历史网址 你的问题涉及到 Same ...
- js 去掉地址栏内参数_JS获取网站地址栏URL中的参数值并转换成json对象
点击上方"蓝字",发现更多精彩. 这个问题其实是个很常见的问题,而且在面试中也会经常被提起,其实想实现这个需求也比较简单,就是考察下对数据交互处理基本操作. 开始转化 var ba ...
- 截取url的host_java正则表达式获取url的host示例
java正则表达式获取url的host示例 复制代码 代码如下: public static String getHost(String url){ if(url==null||url.trim(). ...
- JS——Url 转码、获取Url上的参数
[Url转码] encodeURI 对整个URL进行编码,除了常见的符号以外,对网址中有特殊含义的符号"; / ? : @ & = + $ , #",也不进行编码 enco ...
- php 正则替换url参数,JavaScript正则获取地址栏中参数的方法分享
这篇文章主要介绍了JavaScript正则获取地址栏中参数的方法,涉及javascript基于正则的字符串截取操作相关实现技巧,需要的朋友可以参考下 本文实例讲述了JavaScript正则获取地址栏中 ...
- java.net.url 中文乱码,.Net获取URL中文参数值的乱码问题解决方法总结
本文总结分析了.Net获取URL中文参数值的乱码问题解决方法.分享给大家供大家参考,具体如下: 解决方法: 1.设置web.config文件 2.传递中文之前,将要传递的中文参数进行编码,在接收时再进 ...
- php url参数用–,php获取URL各部分参数
url是统一资源定位符,对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址.本文将介绍用PHP函数获取URL各部分参数的使用方法. parse_url() 该函数可以 ...
- html5获取url参数,javascript如何获取url参数
javascript获取url参数的方法:首先创建一个js示例文件:然后定义一个"getQueryVariable"函数:最后通过调用该函数来获取url参数即可. 本文操作环境:w ...
最新文章
- 第11章 UART 串口通信(手把手教你学51单片机pdf部分)
- 基础、数据、开发、部署,AI 时代企业的全方位升级
- Steam高赞游戏入门机器学习!不写代码,人人可玩,又能吸猫,汉化版已推出...
- Qt下的OpenGL 编程(1)Qt下的OpenGL编程必须步骤
- 空值替换为0_「Excel」是零值还是空值,你可以自由掌控
- 音视频技术开发周刊 | 238
- C# 使用Timer控件设置时间间隔
- oracle group by 取最新的一条_大国智能制造全文免费阅读_大国智能制造最新章节_乌溪小道的小说...
- vivado ip xdc 和user xdc 编译顺序
- mysql更改密码_Mysql更改密码、连接mysql、mysql常用命令
- 小型新闻管理系统Java
- HTML页面乱码怎么解决?
- 抖音文字旋转动画PR模板 Mogrt格式动态标题文字Pr模板免费下载
- Linux的du命令
- 区分计算机和服务器的内存条,AMD专用内存是什么意思 AMD专用内存和普通内存条的区别及真相...
- 读书笔记:《巴菲特投资成功的七大秘诀》
- EntityFramework安装失败
- matlab中插入希腊,matlab中希腊字母打法
- unreal 渲染讲的比较好的材料
- 专家教你如何使用google
热门文章
- DHCP和DHCP中继
- 王者荣耀关注显示服务器忙,王者荣耀不满足参加该活动的条件 访问繁忙解决方法...
- 【音视频】技术提升2.0
- Python基础——np.where
- ESP32 NVS同windows文件系统的类比,附上一段NVS操作的代码解析
- “您希望继续执行吗? [Y/n] y 中止。”
- Adobe2023全家桶win及Mac系统安装包下载及安装教程ps、pr、ai、ae安装包下载
- 30岁哥大计算机博士生遇刺身亡!论文刚被顶会接收,曾留学中国
- 定理在数学中的简写形式_初一数学:定义、定理、公式、方法
- 大数据技术之Hadoop概述集群环境搭建常见错误解决等