Fragen - Mehrere HTML-Formulare

Ohne JS (Ajax ist auch nur JS) kannst du keinen Submit auslösen.

Langsam glaube ich das ein bisschen JS/AJAX einfach nicht mehr wegzudenken sind.
Die kleine Minderheit, die JS aus hat, ist sich hoffentlich im Klaren darüber,
das viele Seiten ohne nicht funktionieren. Einfach nicht mehr beachten...
 
Ich habe es nun so gemacht.

Ich habe ein weiteres Formular erstellt wo man zwischen den Kategorien auswählen kann.

Mit onChange="this.form.submit()" wird dann das richtige Skript geladen.

Für User die JS deaktiviert haben, habe ich einfach folgendes eingebaut:

HTML:
<noscript>
   <div id="notice">
      Um alle Funktionen dieser Webseite korrekt nutzen zu können, muss JavaScript in den Browsereinstellungen aktiviert sein.
   </div>
</noscript>
 
Zuletzt bearbeitet:
Die Formulare über AJAX nachzuladen halte ich jedoch für die schönere Lösung.
1) Ein Formular ist nicht dazu gedacht als Navigation zu dienen
2) AJAX ist dafür gedacht Daten nachzuladen
3) Formularübertragungen per POST liefern immer eine unschöne Meldung beim Neuladen der Seite
 
1) Ein Formular ist nicht dazu gedacht als Navigation zu dienen

Das Formular soll ja keine Navigation darstellen, sondern das richtige Skript ansteuern.

Je nach Auswahl wird das Skript sofort verändert. Also das jeweilige Skript geladen. Da bei einem neuen Seitenaufruf, die Variable nicht gesetzt ist, habe ich einen Standard-Skript eingebaut.

Es funktioniert genau wie ich es mir vorgestellt habe.

Jedes Skript hat jetzt sein eigenes Formular und kann nicht so einfach manipuliert werden.

2) AJAX ist dafür gedacht Daten nachzuladen

Ich kenne mich mit AJAX überhaupt nicht aus. Ich habe mich aber ein bisschen eingelesen und soviel ich verstanden habe, funktioniert es wie bei der PHP-GET-Methode über die URL. Das finde ich nicht schön. Es soll auch eine AJAX-POST-Methode geben, die habe ich aber nicht verstanden.

Formularübertragungen per POST liefern immer eine unschöne Meldung beim Neuladen der Seite

Wie meinst du das? Was für eine Meldung?
 
1) Du benutzt das Formular um ein Script anzusteuern, das ist für mich schon eine Navigation und ehrlich gesagt sehr unsauber. Formulare sind dafür gedacht, Nutzereingaben weiterzugeben, das tust du hier allerdings nicht.

2) Die POST Methode funktioniert genau gleich. Sehr schön einfach geht es mit dem jQuery Framework. Egal ob du dort POST oder GET nimmst, für den User sieht es gleich aus, er sieht nämlich gar nichts.

3) Lade doch einfach mal die Seite neu? Es gibt dann eine Meldung ala "Um diese Seite neuzuladen müssen die POST Daten neu gesendet werden. Möchten Sie das tun?" etc.
 
Ich kenne die Meldung, aber die kam bis jetzt gar nicht. Ich kann sie nicht einmal provozieren.

Kannst du mir zeigen wie ich das mit AJAX oder jQuery umsetzen kann?

Am liebsten wäre es mir, wenn der Wert an das PHP-Skript gesendet wird um es dann weiter zu verarbeiten.
 
Die verlinkten Webseiten helfen mir leider gar nicht weiter.

Ich bräuchte schon ein richtiges Beispiel was auch einigermaßen zu meiner Idee passt.

Englische Webseiten mit mir unbekannten Code hilft mir leider nicht weiter.

Trotzdem danke.
 
Zurück