日期:2014-05-16  浏览次数:20432 次

各位高人给看看如何实现??
在   vs   2005   中
function   ShowCanlender(id)
{
            var   vDate   =     showModalDialog( "../Canlender.aspx ", " ", "dialogWidth=190px;dialogheight=215px;status:0;help:no;help:no ");
if(vDate!=   null)
{
document.getElementById(id).value   =   vDate;
}
}

能接受到对话框的值,
为什么给id赋不了值呢??


------解决方案--------------------
1、showModalDialog()方法打开的是一个模态对话框,就是说,如果该窗口不关闭,后续的语句不会继续执行,你如果清楚 alert() 方法就应该明白

2、vDate 这里是一个对象,即使赋值也是把字符串 [object] 赋值到你指定的文本框

3、函数的参数尽量别采用 DHTML 中的属性,你这里使用了 ID 这个属性,如果参数和这些重复,很容易造成混乱
------解决方案--------------------
showModelessDialog()
------解决方案--------------------
我就是要将模态对话框返回的值,赋给我传的id 的文本框,

但是实现不了.为什么呢?
===========================
只是返回一个模态窗口句柄
把对象传给窗口,直接操作吧
vReturnValue = window.showModalDialog(sURL [, vArguments] [, sFeatures])

在模太窗口中用 dialogArguments 来调用传来的参数