klaus: formularverarbeitung stoppen, falls falsche eingaben

hi,

ich habe eine frage - ich habs geschafft, ein kleines JS zu schreiben, das eine eingabe bzw. deren kombination prüft.
bei einem fehler wird ein alert ausgegeben (s.u.)

das problem ist nur: wenn der besucher dann auf ok klickt, wird das formular ja trotzdem verarbeitet...?
wie kann ich es anstellen, daß die verarbeitung gestoppt wird, und der besucher nicht auf die folgeseite kommt, sondern bei dem formular bleibt um seine eingaben zu korrigieren?

function check_form() {
var pic=document.blog_new_entry.pic.value;
var comment=document.blog_new_entry.bild_comment.value;
    if(comment!="") {
        if(pic=="") {
            alert("Ohne Bild kann kein Kommentar zu einem Bild angegeben werden!!");
        }
    }
}

vielen dank für eure hilfe...

grüße,
klaus

  1. hi,

    Hi,

    function check_form() {
    var pic=document.blog_new_entry.pic.value;
    var comment=document.blog_new_entry.bild_comment.value;
        if(comment!="") {
            if(pic=="") {
                alert("Ohne Bild kann kein Kommentar zu einem Bild angegeben werden!!");

    return false;
    ^^^^^^^^^^^^

    }
        }
    }

    So müsste s funzen.
    Bis denn,
    Toby

    1. hi,
      danke erstmal, aber leider klappt das nicht - das formular wird trotzdem weiterverarbeitet?
      andere vorschläge ;-) ?

      grüße,
      klaus

  2. Hallo Klaus,

    das Problem ist nicht der Submit-Button, denn den kann man bereits im HTML-Code mit disabled belegen. Das Problem sit die M$/Windows-Mentalität Formulare als bestätigt anzusehen, wenn RETURN gedrückt wird.

    Das musst Du abfangen.

    Grüße

    Tom

  3. hi

    function check_form() {
    var pic=document.blog_new_entry.pic.value;
    var comment=document.blog_new_entry.bild_comment.value;
        if(comment!="") {
            if(pic=="") {
                alert("Ohne Bild kann kein Kommentar zu einem Bild angegeben werden!!");

    return false; (wie Toby schon schrieb)

    }
        }
    }

    Außerdem muss im <form>-Tag zusätzlich noch 'onSubmit="return check_form()"' stehen (siehe: http://selfhtml.teamone.de/javascript/beispiele/formulareingaben.htm#quelltext).

    gruß
    Tobias

    1. hi,

      perfekt.... jetzt klappt das ;-)

      danke vorallem für den link !!
      selfhtml ist doch eben das beste...;-)

      grüße,
      klaus