Zu 1: Im Change Event des Feldes wird mit "xfa.event.newText" der Wert des Feldes zur Laufzeit ausgelesen. Mit "rawValue" kann der Wert nicht zur Laufzeit ausgelesen werden.
Zu 3: Das JavaScript Objekt "length" ist für einen String ausgelegt. Damit es funktioniert sollte das Objekt "String" mitverwendet werden.
Code: Alles auswählen
String(this.rawValue).length;
Zu 4: Die Beispiele solletn wie Folgt aussehen:
Code: Alles auswählen
//nur Eingabe von DE und Zahlen erlaubt
if(xfa.event.newText.match(/[^0-9DE]/)){
xfa.event.change = "";
}
//nur Eingabe von DE und Zahlen und Leerstellen erlaubt
if(xfa.event.newText.match(/[^0-9DEs]/)){
xfa.event.change = "";
}
//nur Buchstaben erlaubt
if(!xfa.event.newText.match(/d/)){
xfa.event.change = "";
}
//ebenso nur Buchstaben erlaubt
if(!xfa.event.newText.match(/[0-9]/)){
xfa.event.change = "";
}
Code: Alles auswählen
xfa.event.newText.match(/D/)
Die Syntax
Code: Alles auswählen
xfa.event.newText.match(/d/)
Beispiel:
Code: Alles auswählen
//verbietet nur die Zeichen 0-9
if(xfa.event.newText.match(/d/)){
xfa.event.change = "";
//erlaubt nur die Zeichen 0-9
if(!xfa.event.newText.match(/d/)){
xfa.event.change = "";
}
Gruß,
Walde