文档章节

js页面间参数传递

AnyLiem
 AnyLiem
发布于 2015/11/27 16:55
字数 411
阅读 122
收藏 10

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

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" onclick="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中地址栏显示 http://localhost:17591/网页3-6纯html/test02.htm?userName=%E8%BF%99%E6%98%AF%E8%B0%81

firefox中地址栏显示:http://localhost:17591/%E7%BD%91%E9%A1%B53-6%E7%BA%AFhtml/test02.htm?userName=%E8%BF%99%E6%98%AF%E8%B0%81

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

 

 

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() 使用吧!

 

 


© 著作权归作者所有

共有 人打赏支持
AnyLiem
粉丝 15
博文 91
码字总数 30060
作品 0
江北
React Native iOS混合开发实战教程

在做RN开发的时候通常离不了JS 和Native之间的通信,比如:初始化RN时Native向JS传递数据,JS调用Native的相册选择图片,JS调用Native的模块进行一些复杂的计算,Native将一些数据(GPS信息,...

JiaPengHui
09/15
0
0
A.jsp跳转到B.jsp传递值方法的扩展(结合jquery mobile)

A.jsp页面跳转到B.jsp页面,把A中的参数带到B页面中: 方法1:A页面用隐藏值接受要传递的参数: <input type="hidden" name="disId" value="" id="disId"/> <input type="hidden" name="dis......

EDIAGD
2013/09/05
0
0
Spring Boot入门(6)前端接受后台传参

基础知识   利用Spring Boot来制作Web应用,就必定会涉及到前端与后台之间互相传递参数。在Spring Boot的MVC模型中,如果采用Thymeleaf来渲染视图,则前端页面怎么才能获得后台运行传递的参...

jclian91
04/12
0
0
jQuery类库新手使用指南之AJAX方法 - 第一部分

日期:2012/03/07 来源:GBin1.com 最 近几年很多网站,事实上基本所有的网站都使用一个技术 - AJAX来提供流畅并且高效的用户体验。无论是出名的Google Maps还是Gmail,或者是流行的javascr...

gbin1
2012/03/12
0
0
JS实现HTML静态页传值的方法

JS实现HTML静态页传值的方法 作者:前端开发-武方博 发布:2012-10-29 分类:javascript 阅读:8,735次 此处使用JS方式实现静态页之间值传递,其实很简单,废话不多说,见代码,先看index.h...

thinkyoung
2015/06/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

如何通过 J2Cache 实现分布式 session 存储

做 Java Web 开发的人多数都会需要使用到 session (会话),我们使用 session 来保存一些需要在两个不同的请求之间共享数据。一般 Java 的 Web 容器像 Tomcat、Resin、Jetty 等等,它们会在...

红薯
37分钟前
1
0
C++ std::thread

C++11提供了std::thread类来表示一个多线程对象。 1,首先介绍一下std::this_thread命名空间: (1)std::this_thread::get_id():返回当前线程id (2)std::this_thread::yield():用户接口...

yepanl
今天
2
0
Nignx缓存文件与动态文件自动均衡的配置

下面这段nginx的配置脚本的作用是,自动判断是否存在缓存文件,如果有优先输出缓存文件,不经过php,如果没有,则回到php去处理,同时生成缓存文件。 PHP框架是ThinkPHP,最后一个rewrite有关...

swingcoder
今天
1
0
20180920 usermod命令与用户密码管理

命令 usermod usermod 命令的选项和 useradd 差不多。 一个用户可以属于多个组,但是gid只有一个;除了gid,其他的组(groups)叫做扩展组。 usermod -u 1010 username # 更改用户idusermod ...

野雪球
今天
1
0
Java网络编程基础

1. 简单了解网络通信协议TCP/IP网络模型相关名词 应用层(HTTP,FTP,DNS等) 传输层(TCP,UDP) 网络层(IP,ICMP等) 链路层(驱动程序,接口等) 链路层:用于定义物理传输通道,通常是对...

江左煤郎
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部