Estoy trabajando en un script donde todo lo que quiero hacer (ahora mismo) es redirigir al usuario según el botón que presione. Eventualmente tomará la forma de entrada e incorporará eso en la redirección, pero ahora solo estoy tratando de obtener los botones para enviar al usuario al sitio apropiado. Sin embargo, mis redireccionamientos no funcionan.Redirección de página
<html>
<head>
<title>
Home
</title>
</head>
<body>
<script type="text/javascript">
<!--
var textstring;
var btnWhichButton;
//Gets the text from the form
function getQ() {
textstring = document.forms['Search'].elements[0].value;
}
//Does a Google Search
function googleSearch() {
window.location ="http://www.google.com";
}
//Does a YouTube Search
function youtubeSearch() {
window.location = "http://youtube.com";
}
//Figure out which button was pressed
function whichButton() {
if (btnWhichButton.value == 'Google Search') {
googleSearch();
} else if (btnWhichButton.value == 'YouTube Search'){
youtubeSearch();
}
}
//main function to run everything
function main() {
getQ();
whichButton();
}
// -->
</script>
<form name="Search" >
<input type="text" name="q" size="31" maxlength="255" value="" />
<input type="submit" value="Google Search" onclick="btnWhichButton=this; main();" />
<input type="submit" value="YouTube Search" onclick="btnWhichButton=this; main();" />
</form>
</body>
</html>
Cuando se hace clic en cualquiera de los botones, la página vuelve a cargar con? Q = añade a la URL, que no redirige. ¿Alguna ayuda?
Dos cosas que realmente mejorado mi JS: 1. Uso Firebug para depurar el código 2. Uso jQuery para lograr los mismos resultados en mucho menos esfuerzo, y disfrutar de la compatibilidad del navegador de forma gratuita – DanJ
nota al margen: Si sustituyo window.location con alerta (''); eso funciona. Entonces sé que se están realizando las acciones onclick. Además, curiosamente, si rodeo los redireccionamientos con alertas, la redirección funciona. – hodgesmr
@DanJ no pudo estar más de acuerdo contigo ... –