经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » JS/JS库/框架 » JavaScript » 查看文章
JS如何获取地址栏的参数实例讲解
来源:jb51  时间:2018/10/8 8:44:06  对本文有异议

地址:http://127.0.0.1:8082/prosperleedir/index.html?id=6666&name=prosper#prosper

  1. Location{
  2.  
  3.  assign:? (),         // 加载新的文档。
  4.  
  5.  hash:"#prosper",       // 设置或返回从井号 (#) 开始的 URL(锚)。
  6.  
  7.  host:"127.0.0.1:8082",    // 设置或返回主机名和当前 URL 的端口号。
  8.  
  9.  hostname:"127.0.0.1",     // 设置或返回当前 URL 的主机名。
  10.  
  11.  href:"http://127.0.0.1:8082/prosperleedir/index.html?id=6666&name=prosper#prosper",   // 设置或返回完整的 URL。
  12.  
  13.  origin:"http://127.0.0.1:8082",    // 返回当前 URL 的协议和主机名和当前 URL 的端口号。
  14.  
  15.  pathname:"/prosperleedir/index.html",      // 设置或返回当前 URL 的路径部分。
  16.  
  17.  port:"8082",       // 设置或返回当前 URL 的端口号。
  18.  
  19.  protocol:"http:",      // 设置或返回当前 URL 的协议。
  20.  
  21.  reload:? reload(),      // 重新加载当前文档。
  22.  
  23.  replace:? (),       // 用新的文档替换当前文档。
  24.  
  25.  search:"?id=6666&name=prosper",     // 设置或返回从问号 (?) 开始的 URL(查询部分)。
  26.  
  27.  toString:? toString(),      // 返回完整的 URL。
  28.  
  29. }

加载新的文档。

  1. window.location.assign(http://www.baidu.com);

用新的文档替换当前文档。

  1. window.location.replace(http://www.baidu.com);

重新加载当前文档。

如果该方法没有规定参数,或者参数是 false,它就会用 HTTP 头 If-Modified-Since 来检测服务器上的文档是否已改变。如果文档已改变,reload() 会再次下载该文档。如果文档未改变,则该方法将从缓存中装载文档。这与用户单击浏览器的刷新按钮的效果是完全一样的。

如果把该方法的参数设置为 true,那么无论文档的最后修改日期是什么,它都会绕过缓存,从服务器上重新下载该文档。这与用户在单击浏览器的刷新按钮时按住 Shift 健的效果是完全一样。

  1. window.location.reload(true);
  2.  
  3. window.location.reload(false);

返回完整的 URL。

  1. console.log(window.location.toString());

  1. /**
  2.  
  3.      * [getUrlParam 获取地址栏传参]
  4.  
  5.      * @param {[String]} paramname [参数名]
  6.  
  7.      * @return {[String]}      [参数值]
  8.  
  9.      */
  10.  
  11.     function getUrlParam(paramname) {
  12.  
  13.            
  14.  
  15.       var reg = new RegExp("(^|&)" + paramname + "=([^&]*)(&|$)");
  16.  
  17.  
  18.  
  19.       // 查询匹配 substr(1)删除? match()匹配
  20.  
  21.       var s = window.location.search.substr(1).match(reg);
  22.  
  23.  
  24.  
  25.       if (!= null) {
  26.  
  27.  
  28.  
  29.         return unescape(s[2]); // unescape() 函数可对通过 escape() 编码的字符串进行解码。
  30.  
  31.  
  32.  
  33.       }
  34.  
  35.  
  36.  
  37.       return null;
  38.  
  39.  
  40.  
  41.     }
  42.  
  43.  
  44.  
  45.     // ?id=6666&name=prosper
  46.  
  47.     getUrlParam('id'); // s的输出为["id=6666&","","6666","&"]
  48.  
  49.     getUrlParam('name'); // s的输出为["name=prosper","&","prosper",""]


 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号