(超实用)前端地址栏保存&获取参数,地址栏传输中文不在乱码
版权声明:本文为博主原创文章,遵循 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+ ...
随机推荐
- ubuntu12.04下安装Python3.5.2 1
下载源码包 (https://www.python.org/downloads/release/python-352/) 2 解压Python-3.5.2.tar.xz 3 sudo ./conf ...
- Tosca:键盘输入字符串
这是方法之一
- Composer 安装 Jira API 库
环境要求: PHP >= 5.5.9 php JsonMapper phpdotenv 安装 下载安装 Composer curl -sS https://getcomposer.org/ins ...
- 终于解决了python 3.x import cv2 “ImportError: DLL load failed: 找不到指定的模块” 及“pycharm关于cv2没有代码提示”的问题
终于解决了python 3.x import cv2 “ImportError: DLL load failed: 找不到指定的模块” 及“pycharm关于cv2没有代码提示”的问题 参考 :h ...
- setInterval调用ajax回调函数不执行的问题
setInterval调用ajax回调函数不执行 1.首先检查你的setInterval()函数写法是否正确 参考写法 // 检查是否支付成功 var isPayRequest=false; var ...
- Python3入门(十三)——常用内置模块之URL模块urlib
见名知意,一系列用于URL的操作 当然了,主要是用于web爬虫等处理(发送Get/Post请求,处理响应等),暂不展开, 参考:https://www.liaoxuefeng.com/wiki/101 ...
- Java程序员金三银四精心准备的面试题及答案(基础篇)
1.面向对象的特征有哪些方面? [基础] 答:面向对象的特征主要有以下几个方面: 1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问 ...
- 【435】NULL '\0' 0 等在 C 语言中的区别
参考:C/C++语言中NULL.'\0’和0的区别 参考:空字符串.'\0'.0与NULL的区别以及数组清零的特点分析 在 C语言 中没有 空字符 这个东西 '',不过有 空字符串 "&qu ...
- 【VxWorks工程】基于opencv创建读取摄像头数据的工程error
工程编译遇到的问题: Cannot step: Signal : Segmentation violation bytes (0x20 aligned) in partition 0x2023d930 ...
- CentOS 7 新装服务器部署流程
目录 1.设置时区 2.配置内网IP (如果是外网IP,linux要修改远程端口) 3.配置自己的yum源 4.关闭SELinux 5.添加zabbix监控 6.关闭防火墙和NM 7.安装软件包 8. ...