获取url路径中的参数
简介
运用js的时候,我们有时可能会有这样的需求,就是想要获取浏览器地址栏指定的一项参数,形如:https://i.cnblogs.com/EditPosts.aspx?postid=8628413&update=1,
你想要获取postid的内容8628413,或者update的内容1,那么下面就提供解决办法。
解决办法
其实解决办法也挺简单,只要通过一个函数就可以处理掉
//当前url地址栏 file:///C:/Users/admin/Desktop/test.html?id=2
function GetQueryString(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
console.log(window.location.search)//?id=2
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]);
return null;
}
console.log(GetQueryString('id'))//
上面函数的用法很简单,只要把你想要的url参数传进去就可以拿到返回值,注意参数为字符串
发散思维
上面的函数是直接解决了获取当前页面url中的参数,有事我们可能不是想要处理url,而是想要获取特定字符串中的参数,形如:postid=8628413&update=1
然后你想要获取postid的对应的值那么要怎么做呢?
只需要理解下上面函数的原理就很好改写了
function GetQueryString(str,name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
//str = postid=8628413&update=1
//其实str 就相当于 window.location.search.substr(1)
var r = str.match(reg);
if (r != null) return unescape(r[2]);
return null;
}
console.log(GetQueryString('postid=8628413&update=1','postid'))
获取url路径中的参数的更多相关文章
- CSS样式表、JS脚本加载顺序与SpringMVC在URL路径中传参数与SpringMVC 拦截器
CSS样式表和JS脚本加载顺序 Css样式表文件要在<head>中先加载,这样网页显示时可以第一次就渲染出正确的布局和样式,网页就不会闪烁,或跳变 JS脚本尽可能放在<body> ...
- 使用JavaScript获取url(request)中的参数
这次是使用JavaScript来获取url(request)中的参数 在日常页面编写的过程中为了方便操作在<script>中通过使用window.location.href="要 ...
- js获取url(request)中的参数
index.htm?参数1=数值1&参数2=数值2&参数3=数据3&参数4=数值4&...... 静态html文件js读取url参数,根据获取html的参数值控制htm ...
- JS动态获取项目名以及获取URL地址中的参数
在项目当中我们可能会遇到例如改变的项目名称之后,相对应的地址就需要改变,为了减少工作量,将地址当中的项目名这一块写成动态获取的,那么最关键一点就是我要先获取它,再进行操作: 知识点整理,话不多说,直接 ...
- 对url路径中的参数进行加密--Java
需求: 后台对一些比较敏感的参数进行数据加密,然后在传送到前端.当前端跳转到后台时,再由后台对其进行解密. 参考 针对url参数的加密解密算法(java版) 修改:对中间的js页面加密代码改写为jav ...
- js获取URL地址栏中的参数
function getUrlParam(name) { var reg = new RegExp("(^|&)" + name + "=([^&]*)( ...
- js获取url地址中的参数
<script type="text/javascript"> function GetQueryString(name) { var reg = new RegExp ...
- 获取URL路径参数getUrlParams
function getUrlParams(){ var reg = new RegExp("(^|&)" + name + "=([^&]*)(& ...
- JS分页 + 获取MVC地址栏URL路径的最后参数
@{ Layout = null; } <!DOCTYPE html> <html> <head> <meta name="viewport&quo ...
随机推荐
- 【Codeforces】CF 467 C George and Job(dp)
题目 传送门:QWQ 分析 dp基础题. $ dp[i][j] $表示前i个数分成j组的最大和. 转移显然. 吐槽:做cf题全靠洛谷翻译苟活. 代码 #include <bits/stdc++. ...
- margin-top失效
span标签是行类元素,只能margin-left,right 解决办法: 将span标签改为块级标签
- C++官方文档-this
#include <iostream> using namespace std; class Dummy { public: int x; Dummy() : x() { } ; Dumm ...
- form表单提交参数封装
function getFormValues(element,options) { var data = {}; if(element == null || element == undefined) ...
- docker容器中搭建kafka集群环境
Kafka集群管理.状态保存是通过zookeeper实现,所以先要搭建zookeeper集群 zookeeper集群搭建 一.软件环境: zookeeper集群需要超过半数的的node存活才能对外服务 ...
- leetcode130
struct POS { int x; int y; POS(int newx, int newy): x(newx), y(newy) {} }; class Solution { public: ...
- FMX ScrollBox 拖拽控制
Firemonkey下的ScrollBox 拖拽控制,滚动控制,拖拽,滚动条 AniCalculations 仅允许纵向拖拽,拖拽 scrlbx.AniCalculations.TouchTracki ...
- 可视化库-seaborn-多变量分析绘图(第五天)
1. sns.stripplot(x='data', y='total_bill', data=tips, jitter=True), 画出竖形的样子,jitter=True为了使得数据尽量分开 im ...
- Annoying “Remote System Explorer Operation” causing freeze for couple of seconds
Eclipse -> Preferences -> General -> Startup and Shutdown. -Uncheck RSE UI. Eclipse -> P ...
- python内存泄漏
记录: 一个脚本在连续运行后,使用内存越来越大,在循环后手动添加gc.collect()没有作用. 尝试方法: 去除所有函数中当作参数传入的全局变量 使用全局redis对象,不再当作参数传入 循环末尾 ...