父子窗口函数调用问题!
首先有两个网页,起始页名为index.aspx(父窗口),通过单击父窗口的按钮,以模式对话框的形式打开一个子窗口(b.aspx),现在在b.aspx将要关闭时想调用index.aspx中用Javascript写好的一个函数,现在要如何实现? 
 现贴出我的部份代码请大家帮忙想想办法: 
             index.aspx中调用子窗口的函数如下: 
                      string   result   =    " "; 
                         result   +=    " <script>  "; 
                         result   +=    "if(window.showModalDialog){var   result=window.showModalDialog( ' "   +    "b.aspx "   +    " ',window);} "; 
                         result   +=    "else{var   result=window.open( ' "   +    "b.aspx "   +    " ',\ "mcePopup\ ", 'modal=yes,dialog=yes,width=400,height=450 '); "; 
                         result   +=    "result.focus();} "; 
                         result   +=    " </script>  "; 
                      Response.Write(result); 
             在b.aspx(子窗口)中关闭对话框之前我要调用在index.aspx的 <head> 部份的一个Javascript函数如名为a(row);我的代码如下,可是没有成功请大家帮帮忙! 
                   Response.Write( " <script>  "); 
                         Response.Write( "if(window.showModalDialog){var   k=window.dialogArguments;alert(k);k.eval(\ "a()\ ");alert(2);window.close();} "); 
                   Response.Write( "else{window.opener.a(123);window.close();} ");                           
                         Response.Write( " </script>  "); 
             其中有个前提中父窗口调用子窗口别人的代码写好了,我不能改只能在子窗口这边动手脚! 
------解决方案--------------------showModalDialog 可以传递参数的   根据返回值  在index.aspx写JS实现你需要的操作 
 参照下面   
 完整的请看我的blog http://blog.csdn.net/junval/archive/2007/03/13/1527768.aspx 
 关闭时候刷新父窗体   
 方法一:   
 在主页里写上: <iframe   name=meizz   width=0   height=0>  </iframe>     
   模态框里写上: <form   target= "meizz ">      将模态框提交给主页里那个隐藏的框架里          
   后台接收页里写上这么一句代码:    <body   onload= "if(window!=top)parnet.location.reload() ">    
  方法二:   
 在对子窗体操作后,如何刷新父窗体,因为此时父窗体的数据可能有变化   
   网上有很多人介绍用Response.Write( " <script language:javascript>  javascript:window.opener.location.reload(); </script>  ");但是试了很多版本,发现其实opener是识别不了的,在子页面里无法刷新父窗体   只有返回后让父窗体自己刷新,即this.Page.RegisterStartupScript( "a ", " <script   language=javascript> window.showModalDialog( 'webform2.aspx?b= "+a+ " ', ' "+a+ " ', 'dialogWidth=380px;dialogHeight=450px;status=yes;scroll=no;resizable=no; ');window.location=window.location; </script>  ");就是写在父窗体的执行脚本语句里,可以看到比刚才只是多了个window.location=window.location,就是自己在重新加载一遍.4其他:showModalDialog:模态窗口,始终获得焦点     被打开后就会始终保持输入焦点。除非对话框被关闭,否则用户无法切换到主窗口。类似alert的运行效果。    要在父窗口里开一个showModalDialog,可以通过父窗口一个按钮的click事件 如:this.Page.RegisterStartupScript( "dffd ", " <script   language=javascript> window.showModalDialog( 'webform3.aspxb ', '变量 ', 'dialogWidth=380px;dialogHeight=450px;status=yes;scroll=no;resizable=no; ' </script>  ");可以看到showModalDialog又三个参数,第一个为要开的子窗体,第二个为传递的变量,最后的为窗体的大小等些设置.如何传父窗体的值给子窗体,可以通过sessi