2016-12-13 2 views
0

Ich versuche, ein HTML-Formular zu machen, das bei submit eine Google-Suche mit JS durchführt.Warum leitet mein JS die Webseite nicht um?

Dies ist der HTML:

<form name="form"> 
    <input type="text" name="search" id="searchBox" onkeyup="changeLogo()" autofocus> 
    <input type="submit" id="button" value="Submit" onclick="googleSearch()"> 
</form> 

Und die JS-Funktion:

function googleSearch() { 
    var searchText = document.getElementById("searchBox").value; 
    window.location.href = "http://google.com/"; 
} 

Die Google-URL ist nicht richtig, aber es ist überhaupt nicht umgeleitet .. Ich habe alert (search) in der Funktion und der Alarm zeigte sich so nicht wirklich sicher was los ist.

+0

Die Syntax scheint in Ordnung, so empfehle ich versuchen 'document.location.href' statt' window' vielleicht einige Ihrer JS-Code ersetzt Das hier ? Andernfalls sollten Sie uns die URL anzeigen, die die Probleme verursacht hat, damit wir sie betrachten können. – Eduard

+0

Beim Laden der URL ist http://127.0.0.1:53841/ und sobald ich es abschicke reicht es nur das Formular http://127.0.0.1:53841/?search=test – jordanc

Antwort

0

weil die Seite aktualisiert, wenn Sie klicken einreichen, bevor Executing wie mit Ihrem Code localtion.href Linie

try Änderung unter

<form name="form" onsubmit="return false"> 
.... 
</form> 
+0

ja! Danke! wird deine antwort annehmen wenn es mich lässt .. – jordanc

2

Wenn Sie Knopf als ‚Senden‘ verwenden, wird es Ihr Formular einreichen .

So können Sie Ihre Schaltfläche

ändern
<input type="submit" id="button" value="Submit" onclick="googleSearch()">` 

zu

<input type="button" id="button" value="Submit" onclick="googleSearch()"> 

Es funktioniert.

+0

reicht noch das formular leider ein:/ – jordanc

+0

@jordanc das sollte gut funktionieren ... – ASK

+1

konnte es nicht einreichen, kannst du deinen geänderten code senden? –

0

Ihr Formular wird übermittelt, was möglicherweise das Problem ist. Ändern Sie die type="submit" zu type="button" Dies wird sicherstellen, dass das Formular nicht auf Klick auf diese Schaltfläche gesendet wird

Verwandte Themen