有关模式对话框的问题
因为代码太长所以没有全部贴出来,我大致说明一下问题,高手们帮我分析下
list.asp里面判断数据库里面有要显示的记录之后,弹出一个模式对话框显示记录,但是显示完之后要更新记录,但是写在模式对话框里的更新记录的步骤没有及时执行,需要关闭浏览器之后才看到记录被更新,我在两个页面里面加了 response.buffer=false,仍然一样的结果,模式对话框的这个特性要如何才能改变?
list.asp(普通窗口)
function ReceiveMsg()
cleft=(screen.width-<%=MessageDialogWidth%>)/2
ctop=(screen.height-<%=MessageDialogHeight%>)/2
window.showmodaldialog "Message.asp?act=receive&uid=<%=session("Uid")%>","mes","dialogWidth=<%=MessageDialogWidth%>px;dialogHeight=<%=MessageDialogHeight%>px;help=no;status=no;scroll=no;"
end function
mes.asp(模式对话框)
sql="update Message set Received=true where Message.Received=false and FromUid=(select top 1 FromUid from Message where ToUid='"&Uid&"' and Received=false) and ToUid='"&Uid&"'"
Conn.execute sql
mes里面的sql要关闭list.asp窗口才会执行,请问该如何处理?
问题点数:50、回复次数:3Top
1 楼yuliang0828(殷剑平)回复于 2005-08-01 23:51:45 得分 0
我的理解是你用list.asp调用mes.asp是否?如果是,我的分析是这样:如果你用一个静态页面去以模式对话框的方式调用一个ASP页面,ASP的执行应该是没问题的。另外,你怎么知道的只有关闭了所有窗口后才执行的结论。莫非你看了弹出mes.asp后的List.asp的内容,如果是那样的话应该用脚本将List.asp刷新才好。
如果我的第一个判断都不完全正确。那给你个大概的建议,弹出窗口的下一行接一个打开新窗口或刷新当前页的语句(这句的目的是为了调用某个ASP页来执行原mes.asp内的内容)Top
2 楼net_lover(【孟子E章】)回复于 2005-08-02 07:57:53 得分 50
window.showmodaldialog "Message.asp?act=receive&uid=<%=session("Uid")%>",window,"dialogWidth=<%=MessageDialogWidth%>px;dialogHeight=<%=MessageDialogHeight%>px;help=no;status=no;scroll=no;"
window.dialogArguments.location.reload 刷新
http://dev.csdn.net/develop/article/15/15113.shtm
关键要了解showmodaldialog 的工作机制Top
3 楼Clayborne(Clay)回复于 2005-08-05 17:11:42 得分 0
因为完全没有接触过,所以找资料存在难度,我想问题就是在这里,谢谢!结贴Top




