O valor de retorno de showModalDialog pode ser obtido no IE e no Firefox, mas retornará Nulo no Google Chrome. A solução é apresentada a seguir.
Página pai:
Copie o código do código da seguinte forma:
função abrir janelas(){
var obj = novo Objeto();
//Abra o subformulário modal e obtenha o valor de retorno
var retval = window.showModalDialog("ordervideo.jsp?rderIds="+"0010,0020,0030",obj,"dialogWidth=500px;dialogHeight=500px");
//para cromo
if(retval == indefinido) {
retval = janela.returnValue;
}
alerta(reval);
}
Subpágina:
Copie o código do código da seguinte forma:
função carregar(){
//para cromo
if(window.opener != undefined) { //O valor de window.opener não está vazio no Google Chrome, mas é indefinido no IE/Firefox, então você pode julgar se é o Google Chrome.
window.opener.returnValue = flag; //O método de atribuição de um valor de retorno no Google Chrome window.opener.close() //Isso deve ser fechado uma vez, caso contrário a janela pop-up não pode ser fechada executando a seguinte janela; .close(), porque a janela pop-up no Google Chrome é uma nova janela
}
outro {
window.returnValue=flag; //Este método de atribuição é compatível com IE/Firefox, mas não suporta Google Chrome
}
janela.close();
}