在工作遇着这样一个问题,需要弹出一个窗口,同时要向弹出窗口传递值,并且要从弹出窗口中返回值来。
解决方法如下:
1、弹出一个窗口checkdlg.htm,并且把txtptc和txtphc的值传过去
function showdlg()
{
var objdlg = new Object();
objdlg.value1=frmcheck.txtptc.value;
objdlg.value2=frmcheck.txtphc.value;
frmcheck.txtdlg.value=window.showModalDialog("checkdlg.htm",objdlg,"dialogHeight:150px;dialogWidth: 600px;dialogTop: px;dialogLeft: px; edge: Raised; center:Yes; help: No; resizable: Yes; status:No;scroll:No; ");
}
2、在checkdlg.htm中接收数据
function setbbsm()
{
var obj1= window.dialogArguments;
txtqspt.maxLength=obj1.value1;
txtzzpt.maxLength=obj1.value1;
txtqs.maxLength=obj1.value2;
txtzz.maxLength=obj1.value2;
window.returnValue="";
}
3、通过弹出窗口返回值
function Submit1_onclick()
{
window.returnValue=txtqs.value+","+txtzz.value+","+txtqspt.value;
window.opener=null;
window.close();
}
即frmcheck.txtdlg.value值为弹出窗口所返回的值。
解决方法如下:
1、弹出一个窗口checkdlg.htm,并且把txtptc和txtphc的值传过去
function showdlg()
{
var objdlg = new Object();
objdlg.value1=frmcheck.txtptc.value;
objdlg.value2=frmcheck.txtphc.value;
frmcheck.txtdlg.value=window.showModalDialog("checkdlg.htm",objdlg,"dialogHeight:150px;dialogWidth: 600px;dialogTop: px;dialogLeft: px; edge: Raised; center:Yes; help: No; resizable: Yes; status:No;scroll:No; ");
}
2、在checkdlg.htm中接收数据
function setbbsm()
{
var obj1= window.dialogArguments;
txtqspt.maxLength=obj1.value1;
txtzzpt.maxLength=obj1.value1;
txtqs.maxLength=obj1.value2;
txtzz.maxLength=obj1.value2;
window.returnValue="";
}
3、通过弹出窗口返回值
function Submit1_onclick()
{
window.returnValue=txtqs.value+","+txtzz.value+","+txtqspt.value;
window.opener=null;
window.close();
}
即frmcheck.txtdlg.value值为弹出窗口所返回的值。