Problema
Se stai lavorando con xfa.event.newText e stai cercando di limitare i campi, come dimostrato nel codice seguente, scoprirai che questo non funzionerà.
console.show(); console.println("new text is: " + xfa.event.newText); console.println("old text is: " + xfa.event.prevText); console.println("new text length: " + xfa.event.newText.toString().length); if (xfa.event.newText.toString().length > 9) { console.println( "new text is longer than 9"); this.rawValue = xfa.event.prevText; } console.println("");
Potresti provare a cambiare:
this.rawValue = xfa.event.prevText
per
xfa.event.newText = xfa.event.prevText
ma questo non riuscirà ancora a limitare il campo di testo a 9 caratteri.
Soluzione
Ecco il codice di lavoro, evidenziando le modifiche al codice per far funzionare la limitazione del campo di testo a 9 caratteri:
console.show(); console.println("new text is: " + xfa.event.newText); console.println("old text is: " + xfa.event.prevText); console.println("change is: " + xfa.event.change); console.println("new text length: " + xfa.event.newText.toString().length); if (xfa.event.newText.toString().length > 9) { console.println("new text is longer than 9"); xfa.event.change = ""; } console.println("");