php中我用一个echo输出了js,window.open打开了一个页面,然后接着echo下面还有好多数据处理,有什么办法判断在window.open打开的页面关闭以后,才运行下面的php代码啊。。

解决方案 »

  1.   

    输出的js中带ajax代码做条件判断,探测到下一个窗口关闭以后ajax与php通讯。
      

  2.   

    新开页面目测不行 用弹窗模拟你的window.open吧
      

  3.   

    最好用alert函数测试一下你的运行顺序!
      

  4.   

    应该是无法直接判断的。
    因为你关闭小窗口的操作,不会对原来的PHP脚本回传数据,自然无法触发任何操作了
    可以尝试:
    1.ajax,用小窗口中的JS检测窗口关闭操作,如果关闭,使用ajax向服务端发送相应请求(还可以使用按钮或别的动作触发)
    2.小窗中涉及表单吗?如果涉及,表单本身就是要向服务端发送请求的,可以在用户点击“提交”后,用js关闭页面,提交完成前用户自行关闭页面,视为提交无效。
      

  5.   

    分两段吧。把窗口关闭后的那段php放在另一个地方。当监听到窗口关闭后。用ajax去执行这一段php