博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js页面间参数传递
阅读量:6700 次
发布时间:2019-06-25

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

hot3.png

版权声明:本文为博主原创文章,未经博主允许不得转载。

1传递参数的页面test01.htm

<script type="text/javascript">

    function send() {
        var url = "test02.htm"; 
        var userName = "这是谁";//假设参数值为这是谁

        window.open(encodeURI(url + "?userName=" + userName));

        //encodeURI编码

    }

</script>

<input id="btn" οnclick="send()" value="点击" type="button" name="button"/>

 

2接受并显示参数页面test02.htm

<div id="show"></div>

<script type="text/javascript">
    var urlinfo = window.location.href;                                                                //获取url
    var userName = urlinfo.split("?")[1].split("=")[1];                                        //拆分url得到“=”号后面的值(先用split("?")[1]得到?号以后的值,再用split("=")[1]得到等号后面的值,split从0开始计数)
    document.getElementById("show").innerHTML = decodeURI(userName);//decodeURI解码

</script>

在浏览器中运行test01.htm  点击按钮,进入test02.htm

ie中地址栏显示 网页3-6纯html/test02.htm?userName=%E8%BF%99%E6%98%AF%E8%B0%81

firefox中地址栏显示:

页面中均能显示“你是谁”

 

 

Js中escape,unescape,encodeURI,encodeURIComponent区别:

1.传递参数时候使用,encodeURIComponent否则url中很容易被”#”,”?”,”&”等敏感符号隔断。

2.url跳转时候使用,编码用encodeURI,解码用decodeURI
3.escape() 只是为0-255以外 ASCII字符 做转换工作,转换成的 %u**** 这样的码,如果要用更多的字符如 UTF-8字符库 就一定要用 encodeURIComponent() 或 encodeURI() 转换才可以成 %nn%nn 这的码才可以,其它情况下escape,encodeURI,encodeURIComponent编码结果相同,所以为了全球的统一化进程,在用 encodeURIComponent() 或 encodeURI() 代替 escape() 使用吧!

 

 

转载于:https://my.oschina.net/u/2358326/blog/536558

你可能感兴趣的文章
iOS开发之普通网络异步请求与文件下载方法
查看>>
添加文字和水印
查看>>
LUA ipairs遍历的问题
查看>>
字符驱动之按键(四:poll机制)
查看>>
现在有一个整数数组,已知一个数出现的次数超过了一半,请用O(n)的复杂度的算法找出这个数...
查看>>
山区建小学
查看>>
[javascript|基本概念|Number]学习笔记
查看>>
JSP EL表达式使用
查看>>
连接SQL Server数据库
查看>>
JAVA_Thread_deadlock
查看>>
中小企业网络安全提升
查看>>
[ZJOI2010]贪吃的老鼠
查看>>
爆栈的处理方法
查看>>
大院大所合作对接会7天倒计时!亮点抢先看
查看>>
[已授权] 互联网定位技术小谈
查看>>
Oracle执行计划解释
查看>>
11.8 开课二个月零四天 (Jquery)
查看>>
javaScript复习
查看>>
博弈论之Nim游戏
查看>>
3DMed
查看>>