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

Dropdown in Formular das nur einmal gültig ist

schrubbel

Neues Mitglied
Hallo Zusammen,
ich habe leider nur wenig Programmierkenntnisse.
Ich suche nach einer Lösung für folgende Herausforderung:

Für eine Veranstaltung kann man sich Trainingstermine reservieren.
ich habe Feste Tage zur Auswahl. An den kann man sich ein Stunde buchen. Es beginnen alle Stunden mit 10 min versatz.
In meinem Formular habe ich dann z.B. folgende Auswahl Möglichkeiten:
10:00-11:00 Uhr
10:10-11:10 Uhr
10:20-11:20 Uhr
10:30-11:30 Uhr
usw.

Jetzt habe ich den Wunsch, das jede Uhrzeit nur einmalig ausgewählt werden kann und dann automatisch aus dem Auswahlfeld verschwindet.
Ist sowas Möglich?
Ich erstelle mein Formular in WordPress mit Contact Form 7

Wie gesagt ich habe keine Programmierkenntnisse und hoffe das mir jemand ein verständlichen Tipp geben kann.
Vielen Dank vorab!

Gruß
S.
 
Werbung:
Werbung:
Erstelle unter deinem Formular ein individuelles HTML
und füge das ein:
Javascript:
<script>
(function($) {
$('.wpcf7-select').change(function(){
  let act = $(this).val();
    $( ".wpcf7-select option" ).each(function( index ) {
    if(act == $(this).val()) {
        $(this).hide();
    }
});   
});       
})( jQuery );
</script>

Ist das richtig so?
 
Wenn ja muss das rein:
Code:
<script>
(function($) {
$('.wpcf7-select').change(function(){
  let act = $(this).val();
    $(this).find("option").each(function( ) {
    if(act == $(this).val()) {
        $(this).hide();
    }
});  
});      
})( jQuery );
</script>
 
Zuletzt bearbeitet:
Werbung:
@Oliver77
Ich glaube nicht, dass deine Scripte alleine nicht zur Lösung führen, denn wenn man die Seite aktualisiert oder mehrfach besucht, sind die Termine alle wieder da. Da muss auch eine serverseitige Lösung her, damit ausgebuchte Termine nicht mehr erscheinen.
 
ah ok mir war nicht klar was das soll, man könnte höchstens noch local storage das speichern.. wenn man nur javascript nutzt
 
ah ok mir war nicht klar was das soll, man könnte höchstens noch local storage das speichern.. wenn man nur javascript nutzt
Das bringt ja auch nichts: so würde ein Termin nur für den aktuellen Besucher verschwinden, er muss aber ja vmtl. für alle Besucher verschwinden - und da führt kein Weg an einer serverseitigen Speicherung der belegten Termine vorbei.
 
  • Like
Reaktionen: msi
Werbung:
Wenn ja muss das rein:
Code:
<script>
(function($) {
$('.wpcf7-select').change(function(){
  let act = $(this).val();
    $(this).find("option").each(function( ) {
    if(act == $(this).val()) {
        $(this).hide();
    }
}); 
});     
})( jQuery );
</script>
das Script funktionier, aber wie msi geschrieben hat, sind die Daten wieder da sobald man die Seite aktualisiert.
 
Das bringt ja auch nichts: so würde ein Termin nur für den aktuellen Besucher verschwinden, er muss aber ja vmtl. für alle Besucher verschwinden - und da führt kein Weg an einer serverseitigen Speicherung der belegten Termine vorbei.
das klingt leider als wäre es nicht so einfach...
danke jedenfalls für den Hinweis
 
Werbung:
Werbung:
super, vielen Dank euch! So nah wie heute war ich noch nicht an einer Lösung. Kurz sah es aus als würde es funktionieren. Schönen Sonntag und besten Dank!
 
Es gibt ein Senden-Event bei Contact7
https://contactform7.com/dom-events/
Javascript:
<script>
(function($) {
let act = $('.wpcf7-select').val();
$('.wpcf7-select').change(function(){
 act = $(this).val();
});  
$(".wpcf7").on( "wpcf7submit", function() {
$.post( "datenempfangen.php", { date:act } );
});
})( jQuery );
</script>

In der datenempfangen.php wird die Auswahl dann verarbeitet.
Ist das richtig so @msi ?

 
Zuletzt bearbeitet:
Werbung:
Zurück
Oben