利用ymPrompt的doHandler方法来实现获取子窗口返回值

 今天在写页面时用到了ymPrompt的win方法来弹出一个窗口。由于要用到获取子窗口返回来的值判断是否刷新父窗口,在ymPrompt的组件Demo中一直没有找到合适的方法实现,郁闷的很,心里仍不死心,有重头到尾的那介绍的方法看了一遍,看到doHandler时有两个参数sign和autoClose,看了方法介绍后,觉得这个方法可行(以前一直都是用ymPrompt.close方法来直接关闭子窗口),就写了一段脚本测试下,可以实现我想要的 ,现将代码贴出如下:

    父窗口代码:

   function viewSubFeeDetail(feeId)
      {
        ymPrompt.win({message:'viewSubFeeDetail.action?feeId='+feeId,handler:callBack,width:800,height:400,title:'资费详细信息',iframe:true})
      }
     
      function callBack(tp)
      {
        alert(tp);
      }

 

    子窗口代码:

    function closeWin()
   {
    window.parent.ymPrompt.doHandler('error',true);
   }

这样当子窗口的按钮触发closeWin时,将"error"值传回给父窗口的回调函数的参数tp,true参数就是自动关闭子窗口。

 

附:ymPrompt相关资料

演示地址:http://www.ajaxbbs.net/test/ymPrompt4.0/demo.html

详细介绍及下载地址:http://www.ajaxbbs.net/post/product/ymPrompt4.0.html

网站: http://www.ajaxbbs.net/

posted @ 2011-12-16 17:30  绅士也疯狂  阅读(515)  评论(2编辑  收藏  举报