+ Antworten
Ergebnis 1 bis 3 von 3

Thema: Form Validation will nicht

  1. #1
    Kommt häufiger vorbei
    Registriert seit
    14.06.2009
    Ort
    Berlin
    Beiträge
    280
    Bedankte sich
    59
    Erhielt 42 Danksagungen
    in 42 Beiträgen

    Standard Form Validation will nicht

    Hallo,

    ich benutze eine Komponente, bei welcher ich vor dem Absenden der Formularelemente diese auf gültigkeit überprüfen will. Es scheitert aber schon daran überhaupt zu prüfen, ob etwas in das Feld eingegeben wurde.

    Auch die Doku-Seite http://docs.joomla.org/Form_validation bringt nichts da ich eigentlich alles genau so habe wie dort.

    Ich bin kein JS Experte habe aber versucht mittels alert() zu schauen, bis wohin die funktion myValidate ausgeführt wird.
    Code:
    function myValidate(f) {
       alert ('1');
       if (document.formvalidator.isValid(f)) {
          alert('isvalid');
          //f.check.value='{/literal}{php} echo JUtility::getToken(); {/php}{literal}'; //send token
          return false;
       }
       else {
    
          //Example on how to test specific fields
         // if($('email').hasClass('invalid')){msg += '\n\n\t* Invalid E-Mail Address';}
    
          alert('notvalid');
    return false;
       }
       return false;
    }
    Nun wird immer NUR 1 ausgegeben (also der Alert direkt am Anfang der Funktion), alles andere wird nie ausgeführt (zumindest keine alerts), dennoch wird das Formular abgesendet (obwohl nur return false in der Funktion existiert). Wenn ich allerdings ein return false direkt hinter dem ersten alert('1') reintue, dann wird es nicht abgesendet. Das heisst, irgendwie gibt diese Funktion im weiteren (kurzem ^^) Verlauf ein True zurück, oder?

    Code:
    <form action="{$ROOT_HOST}index.php" method="post" name="adsForm" enctype="multipart/form-data" id="WV-form" class="form-validate" onSubmit="return myValidate(this);">
    Und ja, die Klasse von den zu prüfenden Elementen ist auf class="required" gesetzt.

    Sieht jemand den Fehler?

    Danke
    Geändert von EuerAbi (22.06.2010 um 16:26 Uhr)
    "Wenn die geistige Sonne niedrig scheint, dann wirft auch ein Zwerg einen langen Schatten" - Rechts LINKS unten befindet sich das "Danke" Button
    http://www.nachdenkseiten.de
    http://islam.de/72.php

  2. #2
    Neu an Board
    Registriert seit
    21.07.2010
    Beiträge
    3
    Bedankte sich
    0
    1 Danksagung in 1 Beitrag

    Standard Behavior einbinden

    Hallo.

    Ich gehe mal davon aus, dass du bereits JHTML::_('behavior.formvalidation') eingebunden hast. Das wird ja benötigt, um überhaupt die Validierung durchzuführen.

    Evtl. kann jedoch der Ort des "Einbindens" ein Problem sein. Ich hab's in die index.php meines Templates mit eingebunden und nicht in die View meiner Komponente. Unter den Mootools - seit dem gehts bei mir...

  3. Erhielt Danksagungen von:


  4. #3
    Kommt häufiger vorbei
    Registriert seit
    14.06.2009
    Ort
    Berlin
    Beiträge
    280
    Bedankte sich
    59
    Erhielt 42 Danksagungen
    in 42 Beiträgen

    Standard

    Hi,

    auch wenns etwas spät ist, so kann ich ja wenigstens die Lösung hier posten.

    Ich hätt erstmal mit Firebug alles checken sollen vor dem posten, hat sich nämlich herausgestellt dass es ein Konflikt zwischen jQuery und mootools war.

    Danke trotzdem.
    "Wenn die geistige Sonne niedrig scheint, dann wirft auch ein Zwerg einen langen Schatten" - Rechts LINKS unten befindet sich das "Danke" Button
    http://www.nachdenkseiten.de
    http://islam.de/72.php

+ Antworten

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein