Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Page Redirection

I'm working on a script where all I want it to do (right now) is redirect the user based on which button they press. Eventually it will take form input and incorporate that into the redirect, but right now I'm just trying to get the buttons to send the user off to the appropriate site. However, My redirects aren't working.

<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>

When either button is clicked, the page just reloads with ?q= appended to the url, it doesn't redirect. Any help?

like image 982
hodgesmr Avatar asked Nov 15 '22 12:11

hodgesmr


1 Answers

You want to use a button not an input type='submit'. Your current buttons are submitting the form, not performing their onclick actions.

Or block the submit action in some way. Or you could use your functions to set the form action to the url and just let it submit.

like image 89
jasonbar Avatar answered Nov 29 '22 03:11

jasonbar