2

我有两个窗户;其中之一是使用功能打开的window.open("URL", [parameters])。我的问题是我想将元素从子窗口发送到父窗口,这在所有浏览器中都可以正常工作,除了 Internet Explorer(当前使用 IE11)。

我想找到一个解决方案,因为它需要在 Internet Explorer 上运行。

我使用的代码是用 jQuery 编写的,如下所示:

//Inicializating document and events
var x=$(document);
x.ready(inicializarDocumento);

function inicializarDocumento(){
    var x=$("#boAceptar");
//When i click in my button it executes the function pasarDatos
    x.click(pasarDatos);
}

function pasarDatos(){
//I get the reference of the windows father
    var doc=window.opener.document;
    var x=window.opener.$("#seleccionDireccionId");


    var form=$("form[name='foconfirmar']");


//I execute the next code when i submit the form
    form.submit(function (event){
        var listadoid=$("#listadoid option:selected");
        var tipoVia=$("#idTipoVia");
        var km=$("#idkm");
        var piso=$("#idPiso");
        var puerta=$("#idPuerta");
        var urbanizacion=$("#idUrbanizacion");
        var bloque=$("#idBloque");
        var escalera=$("#idEscalera");
        var observaciones=$("#idObservaciones");


        if (listadoid.text()==""){
            alert("Debe seleccionar una dirección de las disponibles");

        }else{
            var o = new Option(listadoid.text()+", "+tipoVia.val()+", "+km.val()+", "+piso.val()+", "+puerta.val()+", "+urbanizacion.val()+", "+bloque.val()+", "+escalera.val()+", "+observaciones.val(), listadoid.val());

            $(o).html(listadoid.text()+", "+tipoVia.val()+", "+km.val()+", "+piso.val()+", "+puerta.val()+", "+urbanizacion.val()+", "+bloque.val()+", "+escalera.val()+", "+observaciones.val());

            x.append(o);
        }
            event.preventDefault();
            event.stopImmediatePropagation();
    });
    self.close();
}
4

0 回答 0