Una situación que ocurre a menudo en proyectos es que hay una lista, como una lista de casos, y al hacer clic en un elemento de la lista se saltará a la página de detalles. Los detalles se generan en función de un registro en el que se hace clic, porque los usuarios agregan los casos y las páginas de detalles específicos más adelante. Cuando comenzamos a escribir, es imposible agotarlos todos. Por lo tanto, al saltar a la página, debemos pasar un parámetro para que podamos realizar una solicitud de datos a través de este parámetro y luego generar la página en función de los datos devueltos por el fondo. Por lo tanto, saltar a través de la etiqueta a definitivamente no funcionará.
A menudo escribimos formularios. Al enviarlos, podemos pasar parámetros. Si usamos el formulario y lo ocultamos, se debe lograr el efecto.
Además, window.location.href y window.open también pueden lograr el mismo efecto.
1. Pasar parámetros a través del formulario.<html lang=en> <head> <!--Formato de codificación del sitio web, codificación internacional UTF-8, codificación china GBK o gb2312--> <meta http-equiv=content-type content=text/html;charset=utf- 8 /> <meta nombre=Contenido de palabras clave=Palabras clave uno, Palabras clave dos> <meta nombre=Contenido de descripción=Contenido de descripción del sitio web> <meta nombre=Contenido del autor=Yvette Lau> <título>Documento</título> <!--Introducción del archivo css js--> <!-- <link rel=icono de acceso directo href=images/favicon.ico> --> <link rel=hoja de estilo href=/> <tipo de script = texto/javascript src = jquery-1.11.2.min.js></script> </head> <body> <nombre del formulario = método frm = obtener acción = recibir.html onsubmit = return foo() estilo = posición:relativa;> <tipo de entrada=nombre oculto=valor oculto = índice = limón> <img class = more src = main_jpg10.png /> <tipo de entrada = enviar estilo = posición:absoluta; izquierda:10px;arriba:0px;ancho:120px;alto:40px;opacidad:0;cursor:puntero;/> </form> <nombre del formulario = método frm = obtener acción = recibir.html onsubmit = devolver foo() estilo = posición:relativa;> <tipo de entrada=nombre oculto=valor oculto = índice = aaa> <img clase = más src = main_jpg10.png /> <tipo de entrada = estilo de envío = posición:absoluta;izquierda:10px;arriba:0px;ancho:120px;alto:40px;opacidad:0;cursor:puntero;/> </form> <nombre del formulario = método frm = obtener acción = recibir.html onsubmit = regresar foo() estilo = posición:relativa;> <tipo de entrada=nombre oculto=valor oculto = índice = bbb> <img clase = más src = main_jpg10.png /> <tipo de entrada = estilo de envío = posición:absoluta;izquierda:10px;top:0px;ancho:120px;altura:40px;opacidad:0;cursor:puntero;/> </form> </body> </html><script> function foo(){ var frm = window.event.srcElement frm.hid.value =; $(frm.hid).attr(index); devolver verdadero }</script>
Al hacer clic en la imagen, saltará a la página recibir.html. La URL de la página se convierte en:
Se ha pasado la cadena que queremos pasar.
Luego realice la división de cadenas en la URL actual
window.location.href.split(=)[1]//Obtener limón
Una vez que obtengamos los parámetros que deben pasarse, podemos continuar con el siguiente paso en base a esto.
Además de la división de cadenas mencionada anteriormente para obtener los parámetros pasados por la URL, también podemos obtenerlos mediante la coincidencia regular y el método window.location.search.
2. A través de window.location.hrefPor ejemplo, cuando hacemos clic en una lista, necesitamos pasar una cadena a la página Detail.html, y luego la página Detail.html carga el contenido de la página a través de datos de interacción ajax según el valor pasado.
var index = limón; var url = recibir.html?index=+index; $(#more).click(function(){ ventana.ubicación.href = url; });
La página actual será reemplazada por la página recibir.html y la URL de la página será:
Luego usamos el método anterior para extraer los parámetros que necesitamos.
3. A través de ventana.ubicación.abiertaSi desea abrir una nueva página en lugar de cambiar la página actual, entonces window.location.href no es aplicable. En este momento, necesitamos usar window.location.open() para lograrlo.
Una breve introducción a la función window.open(). window.open() tiene tres parámetros. El primer parámetro es la URL de la página que se abrirá. El tercer parámetro es una cadena específica. Un valor booleano que indica si la nueva página reemplaza la página cargada actualmente en el historial del navegador. Solo es necesario pasar el primer parámetro. El segundo parámetro también puede ser un nombre de ventana especial como _blank, _self, _parent, _top. _blank abre una nueva ventana y _self logra el mismo efecto que window.location.href.
Continuando con el ejemplo anterior:
<script> var index = limón; var url = recibir.html?index=+index; $(#more).click(function(){ ventana.open(url) });</script>
De esta manera, al hacer clic, se abrirá una nueva página con la misma dirección URL que la anterior.
Debido a las restricciones de seguridad del navegador, algunos navegadores agregan restricciones en la configuración de las ventanas emergentes. La mayoría de los navegadores tienen programas de bloqueo de ventanas emergentes incorporados. Por lo tanto, las ventanas emergentes pueden bloquearse, dos cosas. Una posibilidad es que el programa de bloqueo integrado del navegador bloquee las ventanas emergentes, por lo que es probable que window.open() devuelva Null. En este momento, puede determinar si la ventana emergente ha sido bloqueada. monitoreando el valor devuelto.
var newWin = window.open(url);if(newWin == null){ alerta(ventana emergente bloqueada);}
La otra es una ventana emergente bloqueada por una extensión del navegador u otro programa. Entonces window.open() generalmente arroja un error. Por lo tanto, para detectar con precisión si la ventana emergente está bloqueada, debe detectar el valor de retorno y en. Al mismo tiempo, window.open() está encapsulado en un bloque try-catch. En el ejemplo anterior, se puede escribir de la siguiente manera:
<script> var bloqueado = false; try{ var index = limón; var url = recibir.html?index=+index; $(#more).click(function(){ var newWin = window.open(url); si (newWin == null){ bloqueado = verdadero; } } } catch(ex){ bloque = verdadero } if(bloqueado){ alerta(la ventana emergente está bloqueada } </script>);
Lo anterior es el contenido completo de este artículo. Espero que sea útil para el estudio de todos. También espero que todos apoyen VeVb Wulin Network.