2017-01-10 1 views
0

Ich habe ein Suchformular, wo auf einen Klick auf den Submit-Button zeigt den Formularwert darunter. Dies ist der Code:Halten Sie den Ausgabewert der Formular-ID auf der Seite nach dem erneuten Laden mit .innerHTML

<input type="text" name="searchfield" id="searchfield" value="" /> 
 
<input type="submit" name="submit" id="submitSearch" value="Submit" onclick="document.getElementById('output').innerHTML = document.getElementById('searchfield').value" /> 
 
<div id="output"></div>

Es funktioniert gut, aber einmal eingereicht (die Seite neu geladen und nicht auf eine andere Seite zu gehen) der Wert in der Ausgabe div verschwindet.

Gibt es eine Möglichkeit, den Wert auch nach dem erneuten Laden der Seite beizubehalten?

Ich versuche, den einfachsten Weg zu finden, dies zu erreichen.

+2

Mehrere Möglichkeiten; Speichern Sie es in einer Sitzung, fügen Sie es in Ihren Link ein oder senden Sie einfach Ihr Formular mit jquery/ajax. – Tosfera

+0

Eine Möglichkeit, sie beizubehalten, besteht darin, diese Werte beim Neuladen der Seite zu übergeben und sie von der URL zu übernehmen oder php zu verwenden, um sie wieder auf die Seite zu stellen .... Wenn Sie 'AJAX' nicht verwenden, wird' ajax' Im Hintergrund läuft der Client auf der Seite, während diese Daten gepostet werden, was bedeutet, dass keine Seitenaktualisierung benötigt wird oder Sie Cookies/lokalen Speicher verwenden können. – NewToJS

+0

Ja, Sie können get-Werte (am häufigsten für Suchfelder wie Google https://www.google.com/search?q=value), Sitzungen, Ajax oder sogar cookie/localstorege verwenden (besser nicht). – paolobasso

Antwort

0

Sie können dies zum Beispiel in severals Weise erhalten Werte verwenden, Sitzungen, Cookies, local, Ajax, ...

Da Sie ein Suchformular GET Werte versuchen zu bauen scheint die am besten geeignete (oder Ajax auch).

Ein Beispiel für Code:

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="get"> 
    <input type="text" name="searchfield" id="searchfield" value="" /> 
    <input type="submit" id="submitSearch" value="Submit"/> 
</form> 

<div id="output"> 

<?php 

if(isset($_GET['searchfield'])) { 
    echo $_GET["searchfield"]; 
} 

?> 

</div> 

prüfen AJAX, wenn Sie nicht über eine neu geladen werden soll.

Verwandte Themen