Hallo,
Aber mir ist da noch ein Bug aufgefallen. Für alle Leute die das gleiche Problem mit dem Modul haben wie ich es habe.
Wenn man beim Label eine zulange Bezeichnung (also länger als der vorhandene Platz) eingibt und dann noch ein SonderzeicheN (?! usw.) eingibt, wird das Formular nicht mehr validiert.
Also entweder das Sonderzeichen weglassen oder irgendjemand findet eine Lösung dafür.
Das ist kein Bug. Für das Javascript zur Überprüfung muss für jedes Feld eine eindeutige ID vorhanden sein.
Diese wird in diesem Fall aus dem Label erzeugt. Bei diesen Javascript-Namen dürfen keine Sonderzeichen vorhanden sein!
Beispiel Label Nachname ergibt als Javasrcipt für die Überprüfung als Textfeld:
Code: Alles auswählen
var SpryNachname = new Spry.Widget.ValidationTextField("SpryNachname", "none", {minChars:1, maxChars:255, validateOn:["blur","change"]});
oder Beispiel Label Email ergibt als Javasrcipt für die Überprüfung als Emailfeld:
Code: Alles auswählen
var SpryEmail = new Spry.Widget.ValidationTextField("SpryEmail", "email", {validateOn:["blur","change"]});
Ist hier nun im Label ein Sonderzeichen vorhanden währe dann zum Beispiel das Javascript nicht mehr SpryEmail sondern SpryEm
áil was zu einem Javascriptfehler und dadurch zu keiner Überprüfung führt.
Lösung:
Ich habe hier im Modul nun nicht alle Sonderzeichen hinterlegt. Wenn jemand mehr braucht kann er im Moduloutput folgenden Codeblock dementsprechend erweitern:
Code: Alles auswählen
##########################################################
################## SpryData Feldernamen ##################
##########################################################
$SpryData="Spry".$Data;
$SpryData = str_replace("-", "", $SpryData);
$SpryData = str_replace("/", "", $SpryData);
$SpryData = str_replace(" ", "", $SpryData);
$SpryData = str_replace(":", "", $SpryData);
$SpryData = str_replace(".", "", $SpryData);
$SpryData = str_replace("*", "", $SpryData);
gruß yodatortenboxer