急啊!!!使用windows.open() 打开的页面中使用 postbackurl ,新打开的页面在原页面中了,怎样解决?

xiaolu0575 2009-04-11 05:29:53
1. a.aspx
//Javascript
  <script language="javascript" type ="text/javascript">
  function openwin()
{
  window.open("b.aspx", "newwindow", "height=400, width=400, top=400, left=500, toolbar=no, menubar=no, scrollbars=yes, resizable=no,location=no, status=no")
  return false;
}
</script>

//页面
<asp:Button ID="Button1" runat="server" Text="转到b" Width="18px" OnClientClick="return openwin()" />



2.b.aspx
//页面
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="确定" PostBackUrl="~/a.aspx" /> ----PostBackUrl

Response.Write("<script>window.opener.location.href=window.opener.location.href;window.close();</script>");

点击a 的按钮转到 b页面 ,点击确定按钮后 ,应关闭b 页面。 但却在b页面 的位置显示了a 页面 。
我加了一个PostBackUrl 是为了获得 b 页面的值(在a 页面中使用Page.PreviousPage )
请问如何解决???
...全文
463 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaolu0575 2009-04-13
  • 打赏
  • 举报
回复
<script type="text/javascript" >
function ChooseTreeNodes() {
var result = "";
var nodes = document.getElementById(" <%= TreeView1.ClientID %>").getElementsByTagName("input");
for (var i = 0; i < nodes.length; i++) {
if (nodes[i].type == "checkbox" && nodes[i].checked) {
var p = nodes[i].parentElement || nodes[i].parentNode;
result += p.getElementsByTagName("a")[0].innerHTML + " ";
}
}
window.opener.Choose(result);
window.close();
}
</script>


这样获得的是 TreeNode 的 text 值,如果 要获得 value 值呢?
xiaolu0575 2009-04-12
  • 打赏
  • 举报
回复
谢谢各位,已解决!
我姓区不姓区 2009-04-11
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 xiaolu0575 的回复:]
我想获得的是b页面的TreeView中选中的值,如果是直接response.redirect("b.aspx"); 点击确定再返回到a.aspx 。使用跨页取值是可以的,可是我使用window.open 打开 b.aspx 为什么就不行呢?

[/Quote]
不久前回的一个帖子,参考一下,看有没有帮助吧:
http://topic.csdn.net/u/20090322/17/148daca8-a188-476a-8b22-77d8ea48b25c.html
zhiaini 2009-04-11
  • 打赏
  • 举报
回复
关注
xiaolu0575 2009-04-11
  • 打赏
  • 举报
回复
我想获得的是b页面的TreeView中选中的值,如果是直接response.redirect("b.aspx"); 点击确定再返回到a.aspx 。使用跨页取值是可以的,可是我使用window.open 打开 b.aspx 为什么就不行呢?
阿非 2009-04-11
  • 打赏
  • 举报
回复
@wuyq11

你是不是就会google 问题的关键字啊 ~
wuyq11 2009-04-11
  • 打赏
  • 举报
回复
1
win=window.open(("b.aspx", "newwindow","width=600,height=450,left=0,top=0,scrollbars=1,status=0");
win.focus();
在b页面
Response.Write("<script language='javascript'>window.close();</script>");
2
PostBackUrl属性实现跨页面传值
参考
参考
阿非 2009-04-11
  • 打赏
  • 举报
回复
不用postbackurl
因为它执行在click之前

你想获得什么值
我姓区不姓区 2009-04-11
  • 打赏
  • 举报
回复
PostBackUrl(Cross-Page Posting跨页面公布)只适用于在当前页面PostBack到其它页面,像你这种情况,只能用js将b的数据传到a
insus 2009-04-11
  • 打赏
  • 举报
回复

62,268

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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