JS: Checkt Formular alle 2 Sekunden

edit | delete

Autor: Ralf v.d.Mark

eingetragen: Donnerstag, 14. Mai 2020 um 14:21 Uhr (20/2020 Kalenderwoche)

geändert: Dienstag, 23. März 2021 um 11:36 Uhr (12/2021 Kalenderwoche)

Keywords: setTimeout Checken Formular Sekunden zeitlich neuladen setzen checkboxen

Kategorien: Browser, JavaScript,

Text:

Ein Formular immer wieder durchchecken und auf Änderungen reagieren.


Ggf. könnte man die Zustände auch in der JavaScript-"Session" speichern:
Es gibt zwei Arten von JavaScript-"Sessions":
1. localStorage (ohne Verfallszeitpunkt):
localStorage.landText = 'Deutschland';
//oder
localStorage.setItem('landText ', 'Deutschland');


2. sessionStorage (verfällt mit Ablauf der Session)
sessionStorage.landText = 'Deutschland';
//oder
sessionStorage.setItem('landText ', 'Deutschland');


s. a. Techdox-Artikel 240

Quellcode:  

<script type="text/javascript">
var lauf;
function checkLandIsDeutschland() {
    var land_id = document.itemform.land_id.options[document.itemform.land_id.selectedIndex].value;
    var landText = document.itemform.land_id.options[document.itemform.land_id.selectedIndex].text;
    if (land_id == 1) {
        //Land-ID 1 ist Deutschland!
        document.getElementById("plz_ortl").required = true;// Pflichtfeld!
        document.getElementById("plz_ortl").pattern = "[0-9]{5}";//Deutsche Postleitzahl
        document.getElementById("plz_postfachl").pattern = "[0-9]{5}";//Deutsche Postleitzahl
        document.getElementById("bundesland_idl").required = true;//Pflichtfeld!
        document.getElementById("hinweisbundesland_id").innerHTML = "Nur bei Auswahl Deutschland";
    } else {
        document.getElementById("plz_ortl").required = false;//Kein Pflichtfeld
        document.getElementById("plz_ortl").pattern = "[.](*)";//Alles erlaubt!
        document.getElementById("plz_postfachl").pattern = "[.](*)";//Alles erlaubt!
        document.getElementById("hinweisbundesland_id").innerHTML = landText + " ausgewählt!";
                                                     //Hinweis: bei Nicht-Deutschland
        document.getElementById("bundesland_idl").required = false;//Kein Pflichtfeld
        document.getElementById("bundesland_idl").value = "--";
                                                     //Hinweis "nur bei Deutschland" ausblenden!
    }//ENDE: else ==> if ()
    //jetzt einfach immer wieder aufrufen (alle 2 Sek.)
    lauf = window.setTimeout("checkLandIsDeutschland()", 2000);
}//ENDE: function KontrollierDieAuswahlboxen()
lauf = window.setTimeout("checkLandIsDeutschland()", 3000);
</script>