有关用js在两个页面传参数的问题~~~

nyqxd 2011-04-18 02:38:18
从a.html跳转到b.html页面,同时传一个参数过去。我现在已经实现这些功能,但是这个b.html是新打开的,我想让b.html页面代替a.html,请问该如何实现?具体请看代码和注释:

a.html:

function openPage2(value){ //在a.html页面里调用这个函数,新打开b.html,同时把value传过去
passToPage2.staffId=value;
window.open('http://127.0.0.1:8080/pm/html/b.html');
}


b.html:

Ext.onReady(function(){ //打开b.html后,会自动加载这个函数
var data = window.opener.passToPage2.staffId;//获得传过来的值,这个功能已经实现
}


也就是说,现在可以调到b.html,也可以传值,但是b.html是新打开的,我想让b.html在原来的窗口打开,却无法实现。我试过已下写法,测试未通过:

window.open('http://127.0.0.1:8080/pm/html/b.html',"_self");
...全文
769 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复

js页面跳转时传参与接受参数


Default.aspx //传参页面

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
<script type="text/javascript">
function test()
{
window.location.href="Default3.aspx?id=10&name=zhangsan";
}
</script>
</head>
<body>
<form id="form1" runat="server">
<div style="width:100%; height:100%; text-align:center;">
<input id="Button1" type="button" value="js传参" onclick="test()" />
</div>
</form>
</body>
</html>



Default3.aspx //接受参数页面

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
<script type="text/javascript" src="JS/jquery-1.4.1.js"></script>
<script type="text/javascript">
function QueryString()
{
//构造参数对象并初始化
var name,value='',i;
var str=location.href.toString().toLowerCase(); //获得浏览器地址栏URL串
var num=str.indexOf("?")
str=str.substr(num+1); //截取“?”后面的参数串
var arrtmp=str.split("&"); //将各参数分离形成参数数组
var showStr="";
for(i=0;i < arrtmp.length;i++)
{
num=arrtmp[i].indexOf("=");
if(num>0)
{
name=arrtmp[i].substring(0,num);//取得参数名称
value=arrtmp[i].substr(num+1); //取得参数值
this[name]=value; //定义对象属性并初始化
showStr+="name="+name+" value="+value+"<br />";
}

}
$("#a").html(showStr);
}

</script>
</head>
<body onload="QueryString()">
<form id="form1" runat="server">
<div id="a">

</div>
</form>
</body>
</html>


zhangping1990a 2011-09-14
  • 打赏
  • 举报
回复
可以在new的窗口直接getElementById,把参数显示在需要的位置
nyqxd 2011-04-18
  • 打赏
  • 举报
回复
已经解决,分数按帮助大小给,谢谢。
ycproc 2011-04-18
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 hch126163 的回复:]

function openPage2(value){ //在a.html页面里调用这个函数,新打开b.html,同时把value传过去 passToPage2.staffId=value; window.open(); }


window.location.href='http://127.0.0.1:8080/pm/html/b.html?staffId='+value;

不就可……
[/Quote]

+1
funli 2011-04-18
  • 打赏
  • 举报
回复
用location.replace就是替换原来的窗口页面啊
toury 2011-04-18
  • 打赏
  • 举报
回复
function openPage2(value){ //在a.html页面里调用这个函数,新打开b.html,同时把value传过去
passToPage2.staffId=value;
window.open('http://127.0.0.1:8080/pm/html/b.html');
window.opener=null;
window.open('','_self','location=no,menubar=no,toolbar=no,statusbar=no,resizable=yes');
window.close();
}


Horrison 2011-04-18
  • 打赏
  • 举报
回复
window.open('http://127.0.0.1:8080/pm/html/b.html');
在打开的时候,加上target=_self不行吗
hch126163 2011-04-18
  • 打赏
  • 举报
回复
function openPage2(value){ //在a.html页面里调用这个函数,新打开b.html,同时把value传过去 passToPage2.staffId=value; window.open(); }


window.location.href='http://127.0.0.1:8080/pm/html/b.html?staffId='+value;

不就可以了
cb1156 2011-04-18
  • 打赏
  • 举报
回复
把参数写在地址栏 或者POST提交
_self的时候只能这样。 不过也可以用COOKIE。。。。。。
nyqxd 2011-04-18
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 knightzhuwei 的回复:]

换一种方法实现跨页面js传参 否则实现不了
[/Quote]
能否说详细一点,js不太懂啊~
我只要实现两个功能,1.在同个窗口打开一个页面;2,传一个参数过去
knightzhuwei 2011-04-18
  • 打赏
  • 举报
回复
换一种方法实现跨页面js传参 否则实现不了
nyqxd 2011-04-18
  • 打赏
  • 举报
回复
等待高手,有满意答案即结贴,谢谢!

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧