使用模态窗口遇到的问题???

PPLUNCLE 2004-10-27 07:48:02
这里有两个页面 A.aspx,B.aspx。
B.aspx就是在A.aspx中利用一个按钮弹出的模态窗口。
代码如下:
var a = window.showModalDialog("B.aspx?OID="+ OID +"&FLBM="+ FLBM +"&action="+action,window,"dialogwidth:600px;dialogheight:300px;status:no;scroll:no");

B.aspx页面就是一个信息编辑页面,在B.aspx页面中有个"保存继续"的按钮,还有个隐藏的文本框
<input id="UpSuccess" style="DISPLAY: none; WIDTH: 24px; HEIGHT: 22px" type="text" name="UpSuccess" runat="server" size="1">
点击"保存继续"按钮的事件代码如下:

private void Save_Continue_Click(object sender, System.EventArgs e)
{
if(Save_Data())
{
this.UpSuccess.Value = "success"; //给页面上的那个隐藏文本框赋值。
Data_Load(); //重新载入数据。
}
}

在那个隐藏的文本框文本框下面有下面的js代码:

<script language="javascript">
//得到父窗口的引用。
var VarObject = window.dialogArguments;
//刷新父窗口
function ReferParentWin()
{
if(VarObject != null){
//刷新父窗体.
VarObject.location.reload();
}
}
//保存继续
if(document.all["UpSuccess"].value == "success"){
document.all["UpSuccess"].value = "Finish";
ReferParentWin(); //刷新父窗口
}
</script>

现在遇到的问题如下:
当我第一次在B.aspx页面中编辑数据,点击保存继续时,能够按照设计的保存数据并且刷新父窗口。
但是当我第二次编辑(在不关闭B.aspx情况下,再次编辑数据并保存)并保存时,它就会弹出“没有权限”的
脚本提示框,我想问题就出在那段刷新父窗口的脚本上,当我第一次保存时,页面可以得到父窗口的引用(var VarObject = window.dialogArguments),但是
第二次保存时,因为页面刷新过一次,所以它就不能再得到这个引用了,所以就会出现那个错误。
我现在不知道该怎么解决这个问题....
...全文
124 5 打赏 收藏 举报
写回复
5 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
PPLUNCLE 2004-10-28
  • 打赏
  • 举报
回复
谢谢ttyp(愿赌服输) 了...
ttyp 2004-10-28
  • 打赏
  • 举报
回复
我试了下面的,第二次typeof(window.dialogArguments.location) = unknown

Response.Write("<script language='javascript'>alert(typeof(window.dialogArguments.location));window.dialogArguments.location.reload();</script>");

所以应该另想办法了,要不改设计吧
PPLUNCLE 2004-10-28
  • 打赏
  • 举报
回复
up
PPLUNCLE 2004-10-27
  • 打赏
  • 举报
回复
不对,孟子大哥,你可能理解错我的问题了,你的方法我看了,好像跟我的情况不一致....
孟子E章 2004-10-27
  • 打赏
  • 举报
回复
加个隐藏的frame

http://dotnet.aspx.cc/ShowDetail.aspx?id=49ML4AO8-5PB3-4KNY-NJZD-LJOIOXV4M1X4