2010-09-10 10 views
48

Estoy tratando de hacer una tarea muy simple aquí, me gustaría poder hacer clic en un botón en una página y hacer que me lleve a otra página. He intentado window.location.href, y un montón de otras cosas y no hace nada. He probado diferentes plataformas y diferentes navegadores, todos con el mismo resultado.JavaScript cargar una página en el botón clic

Sé que puede llamar a una función pero no puedo cargar la página nueva. También todo esto está en mi sistema de archivos local y ambas páginas viven en el mismo nivel (pero también he intentado cargar una página externa como www.apple.com).

¿Alguna idea?

Gracias Patrick

+0

Debe ser más específico que "un montón de otras cosas". Publique su código (HTML y JavaScript) y díganos qué errores está recibiendo. –

+0

No es una buena idea: el usuario experimenta un botón como algo que causa acción/desencadenar (devolución de datos, guardar/cargar). Un enlace (a href) está activado para la navegación. No mezcles esos. Confundirás a los usuarios. –

Respuesta

76

simple código para redirigir la página

<!-- html button designing and calling the event in javascript --> 
<input id="btntest" type="button" value="Check" 
     onclick=window.location.href = 'http://www.google.com' " /> 
+0

Esto funcionó, sin embargo, creo que mi problema era que tenía type = "submit" y no type = "button". ¡Gracias por la ayuda! – Patrick

+1

'window.location.assign()' funcionó mejor para mí en Firefox. Por alguna razón, asignación '=' historia desordenada. – akostadinov

15

Sólo window.location = "http://wherever.you.wanna.go.com/", o, para los enlaces locales, window.location = "my_relative_link.html".

Puede intentarlo también tipeando en su barra de direcciones, p. javascript: window.location = "http://www.google.com/".

También tenga en cuenta que la parte de protocolo de la URL (http://) no es opcional para enlaces absolutos; omitirlo hará que javascript asuma un enlace relativo.

+0

Gracias por la sugerencia, no sabía que podía ejecutar javascript en el navegador, aprender algo nuevo todos los días. Estaba probando window.location y otros similares pero no pude hacer que funcione, y sabía que debería hacerlo. Descubrí que mi "tipo" estaba mal, por lo que no tenía nada que ver con el JavaScript y todo lo relacionado con el HTML. Gracias de nuevo por el consejo. – Patrick

19

No abuse de elementos de formulario donde <a> elementos serán suficientes.

<style> 
    /* or put this in your stylesheet */ 

    .button { 
     display: inline-block; 
     padding: 3px 5px; 
     border: 1px solid #000; 
     background: #eee; 
    } 

</style> 

<!-- instead of abusing a button or input element --> 
<a href="url" class="button">text</a> 
+0

También estaba pensando en ir por este camino. Gracias por la ayuda. Disfruto de estos botones más de todos modos. Gracias de nuevo. – Patrick

+0

+1 por hacerlo 'The Right Way' – michaelward82

+0

He intentado este botón y no se ve bien. Es solo un enlace con una línea negra a su alrededor. – AdmiralAdama

3

Las respuestas aquí funciona para abrir la página en la misma ventana del explorador/pestaña.

Sin embargo, quería que la página se abriera en una nueva ventana/pestaña cuando hacen clic en un botón. (decisión pestaña/ventana depende de la configuración del navegador del usuario)

Así que aquí es cómo funcionaba a abrir la página en una nueva pestaña/ventana:

<button type="button" onclick="window.open('http://www.example.com/', '_blank');">View Example Page</button> 

No tiene por qué ser una botón, puede usar en cualquier lugar. Observe el _blank que se utiliza para abrir en una nueva pestaña/ventana.

Cuestiones relacionadas