Pracuję nad skryptem, w którym wszystko, co chcę zrobić (teraz), przekierowuje użytkownika na podstawie naciśniętego przycisku. Ostatecznie zajmie to wejście i uwzględni to w przekierowaniu, ale teraz próbuję po prostu uzyskać przyciski, aby wysłać użytkownika do odpowiedniej strony. Jednak moje przekierowania nie działają.Przekierowanie strony
<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>
Po kliknięciu przycisku albo, strona ładuje tylko z? Q = dołączany do adresu URL, to nie przekierowuje. Jakaś pomoc?
Dwie rzeczy, które naprawdę ulepszone moje JS: 1. Użyj FireBug do debugowania kodu 2. użyć jQuery aby osiągnąć te same rezultaty w znacznie mniejszym wysiłkiem, i cieszyć się kompatybilność przeglądarki za darmo nuty – DanJ
Side: Gdybym zastąpić window.location z ostrzeżeniem (''); to działa. Więc wiem, że wykonywane są akcje onclick. Co ciekawe, jeśli otworzę przekierowania za pomocą alertów, przekierowanie działa. – hodgesmr
@DanJ nie mógł się z Tobą zgodzić więcej ... –