• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Nach "Submit" wieder an der gleichen Stelle weitermachen

Status
Für weitere Antworten geschlossen.

oliver_

Neues Mitglied
Wenn man bei einem Formular auf "submit" klickt, springt man wieder nach oben.
Möchte nach "submit" aber wieder an der gleichen Stelle und Ort weitermachen als wäre nichts passiert. Sprich, man bekommt denselben Screen an der gleichen Stelle, vor und nachdem "submit", zu sehen.
Man könnte es mit einem Anker "#abc" machen, aber man springt dann an einer definierten Stelle, dass möchte ich nicht.
Gibt es auch eine andere Möglichkeit?
Viele Dank im Vorraus.
 
Es gibt die Möglichkeit die Daten aus dem Formular per JavaScript abzugreifen und per Ajax dann an ein PHP Skript zu versenden, welches die Formulardaten auswertet. Du müsstest beim form-Tag den Eventhandler "onsubmit" anwenden, dann eine JavaScript Funktion aufrufen, welche die Daten aus dem Formular ausließt und per Ajax weitergibt. Zum Schluss gibt die Funktion noch ein return false; zurück und die Daten wurden zwar versendet, aber die Seite ist noch an der selben stelle wie vorher.

In etwa so:

Code:
<form action="auswertung.php" enctype="multipart/form-data" method="post" onsubmit="return auswertung();">
HTML:
function auswertung() {
     /*
        Daten aus dem Formular holen
        per Ajax versenden und zum
        Schluss:
     */

     return false;
}

MfG

NewLord
 
Ich weiß nicht ob ich richtig verstanden habe, was du möchtest.

Im form action="... kann man auch eine Sprungziel wie in einem Link angeben.

Das hab ich aus einer älteren Seite von mir kopiert.
Lediglich die Adresse habe ich entfernt.
Code:
<form action="http://adresse.com/#wetter" id="braunlage" method="post">
  <div><input type="hidden" name="wetteranzeigen" value="Braunlage" /></div>
</form>
<form action="http://adresse.com/#wetter" id= "goslar" method="post">
  <div><input type="hidden" name="wetteranzeigen" value="Goslar" /></div>
</form>
<form action="http://adresse.com/#wetter" id= "hochharz" method="post">
  <div><input type="hidden" name="wetteranzeigen" value="Oberharz" /></div>
</form>

<p><strong><a  id="wetter" name="wetter" style = "color : #4A4A4A;">Harzwetter</a></strong></p>
Der Browser springt nach dem Laden zu Id="wetter"

In dem Beispiel werden die Formulare an einer anderen Stelle jeweils so abgeschickt:
Code:
<a href='#wetter' onclick="javascript: document.getElementById('goslar').submit();return;">Goslar</a>
Das geht natürlich auch mit normalen submit-Button ganz ohne Javascript.
 
Zuletzt bearbeitet:
So schön die Lösungen für das Problem auch sind, aber welchen Sinn macht es nach dem Submit an der gleichen Stellen weiterzumachen?
Wenn der User Eingaben macht und dann auf Submit drückt, erwartet er normalerweise eine Bestätigung des Übermittlungsvorganges. Ansonsten wird er höchstwahrscheinlich wiederholt auf Submit drücken und nach zwei, drei versuchen denken, das die Seite einen Bug hat.
Das hat zwei Nachteile. Zum Einen denkt der User, die Seite funktioniert nicht, was nicht sehr gut fürs Image ist, zum anderen Laufen die Userdaten mehrfach hintereinander auf.

Von dieser Betrachtungsweise aus gesehen, halte ich es für absolut bedenklich, eine gescrpitete Lösung einzubauen, die nach dem Submit kein Ergebnis anzeigt und einfach an der selben Stelle weitermacht.
 
So schön die Lösungen für das Problem auch sind, aber welchen Sinn macht es nach dem Submit an der gleichen Stellen weiterzumachen?
Wenn der User Eingaben macht und dann auf Submit drückt, erwartet er normalerweise eine Bestätigung des Übermittlungsvorganges. Ansonsten wird er höchstwahrscheinlich wiederholt auf Submit drücken und nach zwei, drei versuchen denken, das die Seite einen Bug hat.
Das hat zwei Nachteile. Zum Einen denkt der User, die Seite funktioniert nicht, was nicht sehr gut fürs Image ist, zum anderen Laufen die Userdaten mehrfach hintereinander auf.

Von dieser Betrachtungsweise aus gesehen, halte ich es für absolut bedenklich, eine gescrpitete Lösung einzubauen, die nach dem Submit kein Ergebnis anzeigt und einfach an der selben Stelle weitermacht.

1. Nutzen: Es soll geprfüt werden ob Passwort, Name und alle erforderlichen Daten eingegeben wurden.

2. Nutzen: Das Ergebnis soll über Ajax ausgewertet werden - da dies manchmal paar Sekunden dauern kann, kann man doch ne Loading-Box oder so an die Stelle des Formulars machen.
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben