[JavaScript] Per Javascript Dokumentfelder checken

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [JavaScript] Per Javascript Dokumentfelder checken

    Hallo,

    bei SelfHTML habe ich ein Script gefunden, um Dokumentfelder zu überprüfen, ob diese gefüllt sind.

    Das funktioniert allerdings leider nur bei Felder, die nicht deaktiviert sind. Ich habe in meinem Script allerdings zwei Felder, die deaktiviert sind, aber über einen Button-Click gefüllt werden.

    Deaktiviert habe ich die beiden Felder, da diese ausschließlich über den Button gefüllt werden dürfen. Nun werden diese beiden Felder aber nicht geprüft. Kann ich das trotzdem irgendwie erreichen?

    Danke, Chriss

  • #2
    schon mal darüber nachgedacht, dass deaktivierte felder auch nicht übertragen werden, und du sie somit auch nicht auf der script-seite nutzen kannst?

    tipp: readonly
    h.a.n.d.
    Schmalle

    http://impressed.by
    http://blog.schmalenberger.it



    Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
    ... nur ohne :-)

    Kommentar


    • #3
      Original geschrieben von schmalle
      schon mal darüber nachgedacht, dass deaktivierte felder auch nicht übertragen werden, und du sie somit auch nicht auf der script-seite nutzen kannst?

      tipp: readonly
      Prima, ich wusste gar nicht, dass es auch readonly gibt. Danke, funktioniert prima.

      Kommentar


      • #4
        Hallo,

        noch ein kleines Problem.

        PHP-Code:
        onClick="javascript:return chkFormular(); geklickt=true; document.stammgeraet.action='addcopier.php'; return true;" 
        Ich möchte, dass erst die Formularfelder überprüft werden und dann wenn keine Felder mehr ausgefüllt werden müssen, das Formular abgeschickt wird.

        Ich habe das wie oben angegeben probiert, aber es geht immer nur eins von beiden, entweder Prüfung oder Abschicken.

        Wo hab ich da noch einen Fehler?

        Danke, Chriss

        Kommentar


        • #5
          hallo,

          PHP-Code:
          onClick="java script:return chkFormular(); geklickt=true; document.stammgeraet.action='addcopier.php'; return true;" 
          vieleicht fällt dir ja auf das du zweimal nen return true; in einer zeile hast ?

          PHP-Code:
          onClick="java script:if(chkFormular()) { document.stammgeraet.action='addcopier.php'; return true; }" 
          sieht da bestimmt besser aus wozu du "geklickt=true;" verwendest weiss ich ja nicht

          das "JAVASCRIPT" muss glaube ich zusammen geschrieben werden.....

          ich glaube sogar fast, das da gar kein JAVASCRIPT hingehoert


          Byteandi
          Zuletzt geändert von Byteandi; 30.03.2004, 07:12.
          Sport Dates

          Kommentar


          • #6
            Hallo Byteandi,

            mti Deiner Variante bin ich schon ein ganzes Stück weiter, allerdings funktioniert es immer noch nicht richtig. Er prüft jetzt, ob die Felder korrekt ausgefüllt sind, geht dann aber nciht zum Formular zurück, so dass man die Felder ausfüllen muss, sondern schickt das Formular trotzdem ab.

            Was muss ich an der Zeile noch ändern, damit es geht???

            Danke, Chriss

            Kommentar


            • #7
              Original geschrieben von Tomcat Chriss
              Hallo Byteandi,

              mti Deiner Variante bin ich schon ein ganzes Stück weiter, allerdings funktioniert es immer noch nicht richtig. Er prüft jetzt, ob die Felder korrekt ausgefüllt sind, geht dann aber nciht zum Formular zurück, so dass man die Felder ausfüllen muss, sondern schickt das Formular trotzdem ab.

              Was muss ich an der Zeile noch ändern, damit es geht???

              Danke, Chriss
              - in Envent-Handler brauchst du kein javascript: anzugeben
              - da der Button von Typ "submit" ist sendet er das Formular bei true,
              also 3 mal darfst du raten, wo diese "true" fälschlicherweise steht
              EDIT:
              javascript zusammengeschrieben, das Forum trennt hier, ist nicht mein Tippfehler

              Kommentar


              • #8
                Ich hab jetzt das return true rausgenommen, aber jetzt sendet er mir das Formular wieder nicht ab. Wie muss ich denn die Zeile umbauen, damit er erst chkFormular() prüft und wenn alle Bedingungen erfüllt sind, dann das Formular absendet.

                Hier nochmal meine Zeile:

                PHP-Code:
                onClick="if(chkFormular()) { document.stammgeraet.action='addcopier.php'; }" 
                Hiermit prüft er zwar die Felder, aber schickt das Formular wieder nicht ab .

                Kommentar


                • #9
                  wie sieht dennn die Fkt. chkFormular aus ?

                  Kommentar


                  • #10
                    Die Funktion chkFormular()

                    Code:
                    function chkFormular()
                    {
                     if(document.stammgeraet.hersteller.value == "")  {
                       alert("Bitte einen Hersteller auswählen!");
                       document.stammgeraet.hersteller.focus();
                       return false;
                      }
                     if(document.stammgeraet.modell.value == "") {
                       alert("Bitte ein Modell auswählen!");
                       document.stammgeraet.modell.focus();
                       return false;
                      }
                     if(document.stammgeraet.serien_nr.value == "") {
                       alert("Bitte eine Seriennummer eingeben!");
                       document.stammgeraet.serien_nr.focus();
                       return false;
                      }
                     if(document.stammgeraet.kostenstelle.value == "") {
                       alert("Bitte eine Kostenstelle eingeben!");
                       document.stammgeraet.kostenstelle.focus();
                       return false;
                      }
                     if(document.stammgeraet.ansprechpartner1.value == "") {
                       alert("Bitte den ersten Ansprechpartner eingeben!");
                       document.stammgeraet.ansprechpartner1.focus();
                       return false;
                      }
                     if(document.stammgeraet.telefon1.value == "") {
                       alert("Bitte die erste Telefonnummer eingeben!");
                       document.stammgeraet.telefon1.focus();
                       return false;
                      }
                    }
                    Ich habe es schon probiert, dass ich an das Ende der Funktion ein return true gesetzt habe, aber das hat auch nicht funktioniert.

                    Kommentar


                    • #11
                      vor dem letzten } ein "return true;" ergänzen.

                      Kommentar


                      • #12
                        Ich habe vor der letzten geschweiften Klammer, die die Funktion schließt ein return true eingesetzt, aber trotzdem schickt er mir das Formular nicht ab.

                        Ich steh echt auf dem Schlauch.

                        EDIT:
                        Hab grad gesehen, er schickt es schon ab, aber wieder direkt. Er prüft das erste Eingabefeld, stellt fest, dass es nicht ausgefüllt ist, bringt die Fehlermeldung und sendet dann das Formular ab.
                        Zuletzt geändert von Tomcat Chriss; 30.03.2004, 11:00.

                        Kommentar


                        • #13
                          kann man die Seite online sehen ?

                          Kommentar


                          • #14
                            wie hast du die funktion denn jetzt eingebunden?

                            das:
                            onClick="if(chkFormular()) { document.stammgeraet.action='addcopier.php'; }"
                            scheint mir jedenfalls vollkommen unsinnig zu sein.

                            du musst dafür sorgen, dass bei onSubmit im form-tag true oder false zurückgegeben wird.
                            I don't believe in rebirth. Actually, I never did in my whole lives.

                            Kommentar


                            • #15
                              hier mal die Datei, um die es geht. Ist allerdings eine TPL-Datei. Hoffe, das ist kein PRoblem für euch.
                              Angehängte Dateien

                              Kommentar

                              Lädt...
                              X