javaScript不同页面间传递参数
2013-06-20 09:55
429 查看
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() 使用吧!
<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() 使用吧!
相关文章推荐
- 在不同的页面之间用javascript传递参数
- 用javascript实现html页面之间的参数传递
- Android 之不同Activity间页面的跳转与传递参数
- JavaScript跳转页面/Action并传递中文参数[解决js超链接传递过程中产生的中文乱码问题]
- javascript写的关于静态页面获取URL传递参数的函数
- 用javascript实现html页面之间的参数传递
- 关于不同页面之间实现参数传递的几种方式讨论
- hTML 如何在不同页面上传递参数( 1 )
- [HTML+Javascript]不同网页视窗间传递参数
- javascript 实现页面间传递参数(页面传值)
- 在不同页面之间传递参数
- javascript实现html页面之间参数传递的四种方法实例分析
- 用javascript实现html页面之间的参数传递的四种方法
- javascript通过url向jsp页面传递中文参数乱码解决方法
- 解决javascript通过url向Jsp页面传递中文参数乱码问题
- javascript通过url向jsp页面传递中文参数乱码解决方法
- 两个不同HTML页面之间参数传递
- javascript通过url向jsp页面传递中文参数导致乱码解决方案
- 用javascript实现html页面之间的参数传递
- 【JavaScript】从调用者页面传递参数