博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JavaScript获取当前url路径
阅读量:4992 次
发布时间:2019-06-12

本文共 1443 字,大约阅读时间需要 4 分钟。

1、假设当前页完整地址是:http://localhost:61768/Home/Index?id=2&age=18

//获取当前窗口的Urlvar url = window.location.href;//结果:http://localhost:61768/Home/Index?id=2&age=18//获取当前窗口的主机名var host = window.location.host;//结果:localhost:61768//获取当前窗口的端口var port = window.location.port;//结果:61768//获取当前窗口的路径var pathname = window.location.pathname;//结果:/Home/Index//获取当前文档的Urlvar URL = document.URL;//结果:http://localhost:61768/Home/Index?id=2&age=18//获取参数var search = window.location.search;//结果:?id=2&age=18

2、分隔 url 中的参数

var search = window.location.search;var age = getSearchString('age', search); //结果:18var id = getSearchString('id', search); //结果:2//key(需要检索的键) url(传入的需要分割的url地址,例:?id=2&age=18)function getSearchString(key, Url) {    var str = Url;    str = str.substring(1, str.length); // 获取URL中?之后的字符(去掉第一位的问号)    // 以&分隔字符串,获得类似name=xiaoli这样的元素数组    var arr = str.split("&");    var obj = new Object();    // 将每一个数组元素以=分隔并赋给obj对象     for (var i = 0; i < arr.length; i++) {        var tmp_arr = arr[i].split("=");        obj[decodeURIComponent(tmp_arr[0])] = decodeURIComponent(tmp_arr[1]);    }    return obj[key];}

3、跳出当前窗口

//跳出当前窗口,打开新窗口window.open("http://www.baidu.com");

4、document与window

document默示的是一个文档对象,window默示的是一个窗口对象,一个窗口下可以有多个文档对象。

所以一个窗口下只有一个window.location.href,可能有多个document.URL、document.location.href

window.location.href 和 document.location.href 可以被赋值,然后跳转到其它页面,document.URL只能读不能赋值。


 相关文章:

转载于:https://www.cnblogs.com/cang12138/p/7677239.html

你可能感兴趣的文章
依赖注入模式
查看>>
Backbone.js之Todo源码浅析
查看>>
传统软件企业之殇
查看>>
[bzoj4491]我也不知道题目名字是什么
查看>>
CSS pusle雷达动画实现
查看>>
【问题解决方案】之 Word 公式编辑器 使用小tips
查看>>
模拟凡客导航
查看>>
BZOJ4804: 欧拉心算
查看>>
sublime text 3中安装ctags支持函数跳转,安装convertToUtf8支持中文步骤[工具篇]
查看>>
静态类和单例模式区别
查看>>
团队冲刺第一天
查看>>
二分查找法查找数组元素下表
查看>>
第四章 数据类型
查看>>
php-cgi.exe
查看>>
5.7 Windows常用网络命令
查看>>
js跨域问题新方案
查看>>
第六次作业
查看>>
HTML5 Video/Audio播放本地文件
查看>>
svn报错:“Previous operation has not finished; run 'cleanup' if it was interrupted“ 的解决方法...
查看>>
SQLSTATE[HY000]: General error: 1205 Lock wait timeout exceeded; try restarting transaction 解决方法...
查看>>