(超实用)前端地址栏保存&获取参数,地址栏传输中文不在乱码
版权声明:本文为博主原创文章,遵循 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+ ...
随机推荐
- 迁移mysql数据位置
查看位置: show variables like '%datadir%'; /var/lib/mysql
- JVM 类加载器深入解析以及重要特性剖析
1.类加载流程图 从磁盘加载到销毁的完整过程. 2.类加载流程图2 1.加载: 就是把二进制形式的java类型读入java虚拟机中 2.连接: 验证.准备.解析. 连接就是将已经读入到内存的类的二进制 ...
- Jira 入门【转】
JIRA是Atlassian公司出品的项目与事务跟踪工具,被广泛应用于缺陷跟踪.客户服务.需求收集.流程审批.任务跟踪.项目跟踪和敏捷管理等工作领域.它是一个集 项目计划.任务分配.需求管理.错误跟踪 ...
- Angular 项目打包之后,部署到springboot项目中,刷新访问404解决方法
解决方法1: app.module.ts文件添加两行代码: import { LocationStrategy, HashLocationStrategy } from '@angular/commo ...
- Ionic Cordova 调用原生 Api 实现拍照上传 图片到服务器功能
Ionic 调用 Device 设备 Api 获取手机的设备信息 1. 找到对应的Api: https://ionicframework.com/docs/native/device/ 2. 安装相关 ...
- 关于xadmin的网址收集
https://blog.csdn.net/yambo1992/article/details/80918250 https://www.colabug.com/4728510.html django ...
- pl/sql用for in和for select into循环遍历表
create or replace procedure test_procedure_job asv1 varchar2(50);v2 varchar2(50);v3 varchar2(50);beg ...
- kafka的ACK
在谈及到Kafka的ACK之前我们要向讲一下Kafka的复制机制,为了保证Kafka的高性能,设计了分区,一个topic的分区是的数据可以分散,然后可以让更多的消费者来进行消费:避免单一分区,只能由一 ...
- python对 windows系统监控插件
在python编程的windows系统监控中,需要监控监控硬件信息需要两个模块:WMI 和 pypiwin32 .
- 单独使用MyBatis的简单示例
单独使用MyBatis的简单示例:mybaties-config.xml:MyBatis配置文件 <?xml version="1.0" encoding="UTF ...