HTML/CSS: Div nur anzeigen, wenn mit bestimmtem # aufgerufen
lima-city → Forum → Die eigene Homepage → HTML, CSS & Javascript
abfangen
absenden
anzeigen
benutzer
code
dank
form
formular
gesendet code
gestalten
glauben
http
kontakt
lokal speichern
nachricht
output
programmiersprache
schnelle antwort
text
url
-
Hallo liebe Lima-Cityaner!
Ich bastle gerade an meiner Homepage und habe folgendes Problem:
Nach dem Absenden eines Kontaktformulars soll der Benutzer wieder auf die Seite kommen, auf der das Formular war.
Meine Idee war hierzu, den Benutzer auf die Formularseite mit einem #-Link weiterzuleiten und der Div, in dem die Nachricht steht, dass das Formular erfolgreich gesendet wurde.
Erklärung:
Link zur Seite:
kontakt.html#gesendet
Die Nachricht:
<div id="gesendet">Die Nachricht wurde erfolgreich versandt!
Von diesen Links soll es mehrere geben und damit auch mehrere Divs.
Ich hoffe, ihr könnt mir helfen. Wenn mein Vorhaben allerdings nicht mit dieser Methode umzusetzen ist, geht es sicher mit JavaScript. Da ich mich damit aber nicht so gut auskenne, würde ich mich über Hilfe beim Schreiben des Skripts sehr freuen.
Schon einmal Danke im voraus!
MfG. Simon -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
dafür nimmste am besten jQuery $.ajax()
ein tutorial findest du hier
http://webventil.de/2009/04/26/ajaxifizierte-formulare-mit-jquery/ -
Danke für die schnelle Antwort!
Das Tutorial finde ich ganz gut, aber wäre die Nutzung von AJAX auch ohne jQuery möglich?
Bisher verarbeite ich mein Formular sehr komfortabel mit php, was auch sehr gut klappt.
Das würde ich gern immer noch so machen und dann mit einem #-Link zurückleiten und den Text anzeigen lassen.
Ich hatte gedacht, dass der Div z. B. wie ein Spoiler funktioniert (habe ich schon programmiert), bloß dass der Text nicht angezeigt wird, wenn ein Button geklickt wird, sondern wenn die Seite über so einen Link aufgerufen wird:
kontakt.html#gesendet
oder
kontakt.html?id=gesendet
MfG. Simon
Beitrag zuletzt geändert: 22.7.2013 20:31:26 von simon-d -
simon-d schrieb:
Danke für die schnelle Antwort!
Das Tutorial finde ich ganz gut, aber wäre die Nutzung von AJAX auch ohne jQuery möglich?
Bisher verarbeite ich mein Formular sehr komfortabel mit php, was auch sehr gut klappt.
Das würde ich gern immer noch so machen und dann mit einem #-Link zurückleiten und den Text anzeigen lassen.
MfG. Simon
php ist eine server seitige sprache:
das was du da vorhast ist ein stupider anker (html)
wie soll das funktionieren ?ohne die gesammte seite neu zu requesten ?
deswegen mit ajax, und leitest den response in den div
$.ajax({ type:'POST', cache: false, url: page, data: { update: name }, dataType: "html", success: function (data){ $('#content').html(data); // der result aus deinem script wird im div "content" ausgegeben // z.b error oder success // in deinem script musste das halt abfangen und ausgeben } });
Beitrag zuletzt geändert: 22.7.2013 20:35:40 von n0tiert -
Ich will ja nur die Formularverarbeitung mit PHP gestalten.
Ich habe aber nicht das PHP sofort auf der Formularseite drin.
Das PHP eine Serverseitige Programmiersprache ist, ist mir sehr wohl klar.
Aber eine Andere Möglichkeit wäre doch auch, den Text in einer Variable zu übergeben (mit JavaScript) und den Text anzeigen zu lassen. Ich weiß bloß nicht, wie das geht.
MfG. Simon
Beitrag zuletzt geändert: 22.7.2013 20:39:39 von simon-d -
simon-d schrieb:
Ich will ja nur die Formularverarbeitung mit PHP gestalten.
Ich habe aber nicht das PHP sofort auf der Formularseite drin.
Das PHP eine Serverseitige Programmiersprache ist, ist mir sehr wohl klar.
MfG. Simon
muss ja auch nicht , wenn du in deinem html form Submit() abfeuerst , sprichst du ja ein php script an ,
was soll dann zurück kommen ? ausser der output des phpscripts ? (blanke seite mit erhalten ) ausser du includest den php part in dein formular script.
ergo nimmste ajax feuerst das submit() ab und der output leiteste um in den bestehenden div in deinem formular
kannst das ja noch ausfaden und nach time X wieder einfaden selbe mit dem response div
Beitrag zuletzt geändert: 22.7.2013 20:41:12 von n0tiert -
Ich glaube da komme ich nicht ganz mit...
Brauche ich dazu jetzt jQuery oder nicht??
MfG. Simon
Beitrag zuletzt geändert: 22.7.2013 20:49:20 von simon-d -
jQuery wird benötigt,
das muss in dein html eingebunden werden
z.b als cdn variante :
<script type=”text/javascript” src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
oder downloaden http://code.jquery.com/jquery-1.10.2.min.js und lokal speichern /upload (FTP):
<script type=”text/javascript” src="jquery/1.10.2/jquery.min.js"></script>
wobei ich die lokale variante bevorzuge. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage