En JS, generalmente es muy simple abrir una nueva ventana. Solo ve.
Pero dado que quiero pasar parámetros al servidor, y los parámetros parecen una cadena larga, y la longitud de los parámetros de confirmación en el método GET es limitado, tengo los siguientes requisitos:
1. Implementar la presentación post en JS
2. La página devuelta se muestra en una nueva ventana
En primer lugar, hice esto:
La copia del código es la siguiente:
$ .AJAX ({
Tipo: "Publicar",
url: '$ {contextpath} /analyse/detail.do',
Datos: {Carnum: Carnum, IDS: Refids},
éxito: function (str_Response) {var obj = window.open ("Acerca de: blank");
obj.document.write (str_Response);
}
});
Enviado a través de jQuery Ajax, los datos devueltos se escriben en una nueva página, pero debido a que el navegador interceptará la ventana emergente automáticamente, el usuario aún necesita inintercatarlo él mismo, y la experiencia del usuario es muy pobre.
Entonces me di cuenta burlándose de la presentación del formulario
La copia del código es la siguiente:
función post (url, params) {var temp_form = document.createElement ("formulario");
temp_form .Action = url;
temp_form .target = "_blank";
temp_form .method = "post";
temp_form .style.display = "Ninguno"; for (var x en params) {var opt = document.createElement ("textarea");
opt.name = x;
opt.Value = params [x];
temp_form .AppendChild (OPT);
}
document.body.appendChild (temp);
temp_form .subMit ();
}
Nota: Si desea establecer la propiedad de destino del formulario de ventana recién abierto en '_blank'
Luego solicite publicar ('$ {contextPath} /analyse/detail.do', {carnum: carnum, ids: refids});