日期:2014-05-18  浏览次数:20377 次

JS模式框传值问题,急救。
A、B(CRMTextArea.aspx)两页都是作为模式框使用。
想实现A页弹出B页,在B页中输入完成后,将B页中txtContext的值返回给A页的PageClientID(PageClientID作为B页面参数传给B)

现在值没有返回,请高手帮忙看一下。


A页的ASPX(激活并弹出B模式框,给并B页参数:PageClientID):
<script   language= "javascript ">
function   dialwinprocess(PageClientID)
{
var   newdialoguewin   =   window.showModalDialog( '../SPC/CRMTextArea.aspx?PageClientID= '+PageClientID,window, "dialogWidth:440px;DialogHeight=390px;status:no ");
}
</script>

B页的ASPX
<script   language= "javascript ">

function   ReturnValue(RefPageClientID)
{
if   (window.dialogArguments   !=   null)  
{
var   parwin   =   window.dialogArguments;
}
var   ReturnValue   =   "ggggggggggggggggggggggggg ";
try{
eval( "parwin.document.all. "+RefPageClientID+ ".value= ' "+   txtContext.value+ " ' ");  

}catch(ex){
       
}
window.close();
}
</script>

------解决方案--------------------
可能是代码改完了,但运行的却是缓冲区的代码
还有个小问题:
if (window.dialogArguments != null)
{
var parwin = window.dialogArguments;
}
改为
var parwin;
if (window.dialogArguments != null)
{
parwin = window.dialogArguments;
}
是不是更好些?
------解决方案--------------------
window.showModalDialog

有时自己觉得是对的,但运行后却不是自己想要的结果时,可以清除下缓冲.如果还是不行,那说明是代码有问题了