2012-09-20 12 views
9

Intentando que mi botón actúe como un enlace (intenté con la etiqueta <A> y funcionaría si abriera en una pestaña nueva pero no si hace clic en ella. Entonces intenté con este código y nada. Sugerencias?Redireccionamiento de botón de Javascript

<button onClick="location.href='/secure/edit.aspx?id=671'">Edit</button> 
+0

Funciona para mí: http://jsfiddle.net/NTICompass/vFfq3/1/ –

Respuesta

7
<button onclick="window.location='/secure/edit.aspx?id=671'">Edit</button> 
2

Pruebe con window.location

<button onClick="window.location='/secure/edit.aspx?id=671'">Edit</button> 
15

es necesario decir explícitamente window.location porque this en el contexto del botón es º e el objeto del botón en sí. Por lo general, JavaScript se ejecuta en el contexto del objeto window, por lo que no es necesario que lo haga.

<button onClick="javascript:window.location.href='/secure/edit.aspx?id=671'">Edit</button> 

(Además, también me gusta declarar explícitamente que el guión es javascript:, pero eso es puramente una cuestión personal.)

+0

La etiqueta 'javascript' es inútil. – RobG

+0

Redundante, no inútil. Ver https://gist.github.com/3770452 Sin embargo, por qué me gusta incluirlo es porque creo que mejora la legibilidad. –

+1

Depende del idioma. En inglés de Estados Unidos, redundante a menudo se usa para indicar "respaldo" o "conmutación por error" (por ejemplo, un sistema redundante para energía de emergencia). En otras versiones de inglés, redundante significa innecesario o excedente a los requisitos, por lo que es un sinónimo de inútil. :-) – RobG

0

Añadir type = "button"

<button type = "button" onClick="window.location='/secure/edit.aspx?id=671'">Edit</button> 

Es necesario añadir el type, de lo contrario, el botón actuará como un botón de enviar y PUBLICARÁ su formulario en lugar de redirigirlo a la URL deseada.

Cuestiones relacionadas