父页面用window.open弹出一个子页面,(父页面中和子页面中有相同的数据显示)现在这样操作:在父页面把该数据删除,之后在子页面操作已经在父页面删除的记录,此时产生错误,请问有没有什么好方法来解决这个现象?
1、是否在父页面删除数据之后随之刷新子页面?如果这样具体怎么实现监听已经打开了子页面?
2、异常处理;再次操作子页面的记录是,提示某些信息,比如“您所操作的记录不存在”之类的;
3、不想用弹出的dialog来代替window.open

解决方案 »

  1.   

    没有什么好的办法,我的建议是:在主页面保存记录时,自动把子页面关闭。所以你得在打开子页面的时候把它记住
    方法是:var temp=window.open("http://locahost","_blank");
    然后用temp.close()就可以关闭子页面了
      

  2.   

    你最好不要搞这么复杂,不要同时在多个页面显示同一数据。以免无法保持一致性。
    如果非要这样,你可选择用模态弹出窗方式:window.showModalDialog() ,(只支持IE),然后关闭子窗口时就调用: parent.location.reload();
    同一时间只能操作一个页面。如果你非要同一时间可以操作多个页面。
    那我想可能在操作时,后面加一行JS函数 来更新每个页面的数据。