关于showModalDialog()对话框点击按钮弹出新页面的问题

yueye30121 2012-08-06 03:21:58
我用ShowModalDialog()生成一个模态对话框,对话框里面添加了一些button,并且在<head></head>之间写了
<base target="_self"/>,在点击button后还会弹出新的空白页面和一个与模态对话框内容一样的大页面?
求高手
...全文
451 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yueye30121 2012-08-06
  • 打赏
  • 举报
回复
唉。。。还是有点小问题,结贴了!
icefisher 2012-08-06
  • 打赏
  • 举报
回复
这个问题可以通过使用为弹出子页面添加一个过渡frame页面来解决,比如说,弹出的页面是test.aspx,那么可建立一个testframe.aspx页面,其html代码为:
<frameset rows="0,100%" border="0" frameSpacing="0" frameBorder="0">
<frame src="about:blank">
<frame src="test.aspx">
</frameset>
那么相应的主页面打开js应该写成:window.showModalDialog('testframe.aspx',等等);
相应的test.aspx的关闭js代码写成:window.parent.close(),如果从父页面传值到子页面或子页面返回值到主页面也分别要使用window.parent.dialogArguments和window.parent.returnValue方法
返回刷新页面,可通过判断window.parent.returnValue是否为null,如果不为空,则可以js执行隐藏button的submit方法达到刷新页面的效果
话说回来,现在第三方模态对话框控件很多的,Jqury UI、Devexpress等等,不一定要使用这种方法
yueye30121 2012-08-06
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]
记得 两个页面都要回发 不然就无效的

C# code


protected void btnQuery_Click(object sender, EventArgs e)
{
Response.write("<script language='javascript'>var result = window.showModalDialog('Test.aspx',windo……
[/Quote]
为什么还是不能刷新?而且提示要关闭当且模态对话框这个页面?
yueye30121 2012-08-06
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]
记得 两个页面都要回发 不然就无效的

C# code


protected void btnQuery_Click(object sender, EventArgs e)
{
Response.write("<script language='javascript'>var result = window.showModalDialog('Test.aspx',windo……
[/Quote]
为什么还是不刷新呢?而且还提示是否关闭当前页面?
  • 打赏
  • 举报
回复
记得 两个页面都要回发 不然就无效的

protected void btnQuery_Click(object sender, EventArgs e)
{
Response.write("<script language='javascript'>var result = window.showModalDialog('Test.aspx',window,'dialogHeight:100px;dialogWidth:200px;');if(result==1){ window.location.reload();}</script>");
}




Test.aspx.cs


//如果处理成功 时候使用
Response.write("<script language='javascript'>window.returnVal='1';window.close();</script>);
//不处理关闭页面
Response.write("<script language='javascript'>window.returnVal='0';window.close();</script>);



yueye30121 2012-08-06
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
操作完成 窗体关闭


C# code


function closewindow()
{
window.returnValue= "0";
window.close();
}
[/Quote]
我还想问一下,我在A页面点击button后,弹出模态对话框,在模态对话框里面有个C#button,点击后要刷新A页面,刷新的代码不能写在模态对话框源码里面,而是写在protected void btnQuery_Click(object sender, EventArgs e)函数里面!应该怎么刷新?
  • 打赏
  • 举报
回复

操作完成 窗体关闭

function closewindow()
{
window.returnValue= "0";
window.close();
}

yueye30121 2012-08-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
记得页面要关闭
[/Quote]
不懂?具体点?
  • 打赏
  • 举报
回复

记得页面要关闭

62,242

社区成员

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

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

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

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