(超实用)前端地址栏保存&获取参数,地址栏传输中文不在乱码
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/autoXingJY/p/11596506.html
获取地址栏路径 : window.location
demo1 url拼接参数对象成新url
var linkObj = {
"uid": 6666,
"name": "lili",
"sex": "male"
}
var endLink = createURL(url, linkObj);
// 将一个对象拼接在url的后面: createURL(url, linkObj)
function createURL(url, param) {
var urlLink = '';
$.each(param, function (item, key) {
var link = '&' + item + "=" + key;
urlLink += link;
})
urlLink = url + "?" + urlLink.substr(1);
return urlLink.replace(' ', '');
}
console.log("endLink", endLink);
demo2 url提取拼接的参数对象
var jie = parseQueryString(urlStr);
console.log("jie", jie);
// {uid: "2222", name: "xiaoming", sex: "famale"} // 解析url 拿到所有参数对象 parseQueryString(urlStr);
function parseQueryString(url) {
var result = {};
if (url.indexOf('?') > -1) {
var str = url.split('?')[1];
var temp = str.split('&');
for (var i = 0; i < temp.length; i++) {
var temp2 = temp[i].split('=');
result[temp2[0]] = temp2[1];
}
}
return result;
}
demo3 从地址栏拿到指定参数
超方便的方法: 通过正则来从地址栏获取指定参数
// GetQueryString("uid")
function GetQueryString(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]);
return null;
}
demo4 地址栏传输中文不在乱码
运行first.html, 将跳转到second.html页面,页面title显示"中文参数".
///first.html页面
<!DOCTYPE html>
<html> <head>
<meta charset="UTF-8">
<title></title>
</head> <body>
</body>
<script type="text/javascript">
/**
* 这是第一个页面first.html
* 说明: 1 页面first.html运行,跳转到页面second.html
* 2 页面first.html跳转到页面second.html过程, 通过地址栏传参的方式传过去了encode了的 "中文参数"
* 3 页面second.html通过地址栏解码 "中文参数",并展示在页面title上
*
*/
var cnWord = "中文参数";
var encodeWord = encodeURI(encodeURI(cnWord)); // encode进行参数编码
window.location.href = "second.html?cnWord=" + encodeWord;
</script>
///second.html页面
<!DOCTYPE html>
<html> <head>
<meta charset="UTF-8">
<title></title>
</head> <body>
</body>
<script type="text/javascript">
var encodeWord = getQueryString("cnWord"); //地址栏获取first.html页面传来的地址url,并decode解码
var decodeWord = decodeURI(encodeWord); //decode转码
document.getElementsByTagName("title")[0].innerHTML = decodeWord; //获取地址栏参数的方法
function getQueryString(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
var r = window.location.search.substr(1).match(reg);
if (r != null) return unescape(r[2]);
return null;
}
</script> </html>
如果觉得文章对你有用, 请帮忙点个推荐和收藏 ! Thanks♪(・ω・)ノ
(超实用)前端地址栏保存&获取参数,地址栏传输中文不在乱码的更多相关文章
- jsp页面 直接从地址栏中 获取 参数的方法
function GetQueryString(name) { var reg = new RegExp("(^|&)"+ name +"=([^&am ...
- JSP基础知识➣获取参数和过滤器(四)
JSP表单提交和参数获取 JSP表单提交的两种方式:post和get,通过这两种方式提交的参数到后台,获取参数的值主要由request来处理,获取值的方式有以下几种: getParameter(): ...
- js获取url地址栏参数
前端开发中经常会遇到需要获取url地址栏参数问题 方法如下: function getQueryStringByName(name){ var src = "www.baidu.com?na ...
- js动态获取地址栏后的参数
原文链接:https://blog.csdn.net/qq_37936542/article/details/78866651 需求:js动态的获取地址栏后面的参数 js代码: alert(GetQu ...
- JS分页 + 获取MVC地址栏URL路径的最后参数
@{ Layout = null; } <!DOCTYPE html> <html> <head> <meta name="viewport&quo ...
- 用JS获取地址栏中的参数的简易方法
这个方法用起来超级简单,传入参数即可直接获取地址栏中的参数 代码如下 function GetQueryString(name) { var reg = new RegExp("(^|&am ...
- JavaScript获取地址栏中的参数
JavaScript获取地址栏中的参数 1.获取地址栏中的参数 (1)若地址栏中的地址是: http://10.124.36.56:8080/CMOD/index.jsp?name=you&p ...
- javascript/jquery获取url地址栏参数的方法
简洁jq方法获取url地址栏的参数 function getQueryVariable(variable){ var query = window.location.search.substring( ...
- js如何获取地址栏上的参数id
直接上js代码 方法1: 父页面跳转地址栏带id>>>>window.location.href='${ctxAdmin}/study/checkForm?id='+id+ ...
随机推荐
- 【转】php7+IIS 配置环境(windows环境)
继php7+apache2.4 配置环境(window环境)后,由于B2C项目准备上线:特此小编在阿里云上搭建PHP7环境,为此特写上搭建过程希望正处于搭建php7+IIS(windows环境)中的朋 ...
- 小程序 跳转web-view 点击左上角返回需要点击2次才能返回
小程序 跳转web-view 点击左上角返回需要点击2次才能返回 再html页面引入js即可解决 <script type="text/javascript" src=& ...
- CentOS上安装GlassFish4.0
1. 安装jdk 2. 下载并安装glassfish4 [root@linuxidc ~]# mv glassfish-4.0-ml.zip /usr/share/glassfish-4.0-ml. ...
- Docs-.NET-C#-指南-语言参考-关键字-值类型:enum
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-值类型:enum 1.返回顶部 1. enum(C# 参考) 2015/07/20 enum 关键字用于声明枚举,一种包含一组被称为枚 ...
- [转]浅谈HTTP中GET、POST用法以及它们的区别
HTTP定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE.URL全称是资源描述符.我们可以这样认为: 一个URL地址,它用于描述一个网络上的资源,而HTT ...
- Flutter AspectRatio、Card 卡片组件
Flutter AspectRatio 组件 AspectRatio 的作用是根据设置调整子元素 child 的宽高比. AspectRatio 首先会在布局限制条件允许的范围内尽可能的扩展,widg ...
- openresty开发系列3--nginx的平滑升级
openresty开发系列3--nginx的平滑升级 nginx服务器从低版本升级为高版本,如果强行停止服务,会影响正在运行的进程. 平滑升级不会停掉正在运行中的进程,这些进程会继续处理请求.但不会接 ...
- Oracle中复制表的方法(create as select、insert into select、select into)
转: Oracle中复制表的方法(create as select.insert into select.select into) 2018-07-30 22:10:37 小白白白又白cdllp 阅读 ...
- QVector init error
QMetaType::registerType: Binary compatibility break -- Size mismatch for type 'PtsData' [1025]. Prev ...
- 一行命令学会全基因组关联分析(GWAS)的meta分析
为什么需要做meta分析 群体分层是GWAS研究中一个比较常见的假阳性来源. 也就是说,如果数据存在群体分层,却不加以控制,那么很容易得到一堆假阳性位点. 当群体出现分层时,常规手段就是将分层的群体独 ...