版权声明:本文为博主原创文章,遵循 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♪(・ω・)ノ

(超实用)前端地址栏保存&获取参数,地址栏传输中文不在乱码的更多相关文章

  1. jsp页面 直接从地址栏中 获取 参数的方法

    function GetQueryString(name) {      var reg = new RegExp("(^|&)"+ name +"=([^&am ...

  2. JSP基础知识➣获取参数和过滤器(四)

    JSP表单提交和参数获取 JSP表单提交的两种方式:post和get,通过这两种方式提交的参数到后台,获取参数的值主要由request来处理,获取值的方式有以下几种: getParameter():  ...

  3. js获取url地址栏参数

    前端开发中经常会遇到需要获取url地址栏参数问题 方法如下: function getQueryStringByName(name){ var src = "www.baidu.com?na ...

  4. js动态获取地址栏后的参数

    原文链接:https://blog.csdn.net/qq_37936542/article/details/78866651 需求:js动态的获取地址栏后面的参数 js代码: alert(GetQu ...

  5. JS分页 + 获取MVC地址栏URL路径的最后参数

    @{ Layout = null; } <!DOCTYPE html> <html> <head> <meta name="viewport&quo ...

  6. 用JS获取地址栏中的参数的简易方法

    这个方法用起来超级简单,传入参数即可直接获取地址栏中的参数 代码如下 function GetQueryString(name) { var reg = new RegExp("(^|&am ...

  7. JavaScript获取地址栏中的参数

    JavaScript获取地址栏中的参数 1.获取地址栏中的参数 (1)若地址栏中的地址是: http://10.124.36.56:8080/CMOD/index.jsp?name=you&p ...

  8. javascript/jquery获取url地址栏参数的方法

    简洁jq方法获取url地址栏的参数 function getQueryVariable(variable){ var query = window.location.search.substring( ...

  9. js如何获取地址栏上的参数id

    直接上js代码   方法1: 父页面跳转地址栏带id>>>>window.location.href='${ctxAdmin}/study/checkForm?id='+id+ ...

随机推荐

  1. ubuntu12.04下安装Python3.5.2 1

    下载源码包 (https://www.python.org/downloads/release/python-352/) 2  解压Python-3.5.2.tar.xz 3  sudo ./conf ...

  2. Tosca:键盘输入字符串

    这是方法之一

  3. Composer 安装 Jira API 库

    环境要求: PHP >= 5.5.9 php JsonMapper phpdotenv 安装 下载安装 Composer curl -sS https://getcomposer.org/ins ...

  4. 终于解决了python 3.x import cv2 “ImportError: DLL load failed: 找不到指定的模块” 及“pycharm关于cv2没有代码提示”的问题

    终于解决了python 3.x import cv2 “ImportError: DLL load failed: 找不到指定的模块” 及“pycharm关于cv2没有代码提示”的问题   参考 :h ...

  5. setInterval调用ajax回调函数不执行的问题

    setInterval调用ajax回调函数不执行 1.首先检查你的setInterval()函数写法是否正确 参考写法 // 检查是否支付成功 var isPayRequest=false; var ...

  6. Python3入门(十三)——常用内置模块之URL模块urlib

    见名知意,一系列用于URL的操作 当然了,主要是用于web爬虫等处理(发送Get/Post请求,处理响应等),暂不展开, 参考:https://www.liaoxuefeng.com/wiki/101 ...

  7. Java程序员金三银四精心准备的面试题及答案(基础篇)

    1.面向对象的特征有哪些方面? [基础] 答:面向对象的特征主要有以下几个方面: 1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问 ...

  8. 【435】NULL '\0' 0 等在 C 语言中的区别

    参考:C/C++语言中NULL.'\0’和0的区别 参考:空字符串.'\0'.0与NULL的区别以及数组清零的特点分析 在 C语言 中没有 空字符 这个东西 '',不过有 空字符串 "&qu ...

  9. 【VxWorks工程】基于opencv创建读取摄像头数据的工程error

    工程编译遇到的问题: Cannot step: Signal : Segmentation violation bytes (0x20 aligned) in partition 0x2023d930 ...

  10. CentOS 7 新装服务器部署流程

    目录 1.设置时区 2.配置内网IP (如果是外网IP,linux要修改远程端口) 3.配置自己的yum源 4.关闭SELinux 5.添加zabbix监控 6.关闭防火墙和NM 7.安装软件包 8. ...