I have a form where I want to do a five to nine zip code; if the user inputs anything else, it is will be deemed invalid and the field will be empty when the user presses "enter."
So far, in the change event, I have the following script that only allows 9 digits, meaning the user cannot input more than 9 digits:
var maxLength = 9;
if(xfa.event.newText.length >maxLength)xfa.event.change = "";
Then in the exit event, I have the following script that only allows numerical digits:
if(this.rawValue==null){this.execValidate();}
if (!/^[0-9]{5,9}$/i.exec(this.rawValue)) {
this.rawValue= null;
}
The problem is that it's still allowing entries like "123456" or "1234567" or "12345678." I only want users to be able to enter a 5-digit or 9-digit zip code.
Please let me know if there is anything I can do to resolve this issue.
Solved! Go to Solution.
Views
Replies
Total Likes
I have the nine-digit pattern set up in LiveCycle (e.g.,12345-1234), so I revised the code a bit and it shows up: if(!/^\d{5}(\d{4})?$/.test(this.rawValue))
Thanks!
Views
Replies
Total Likes
You can use a string length and compare the input.
var str = field1.rawValue
var n = str.length
if(n != 5 || n != 9){
message...
field2.rawValue = ""
}
Views
Replies
Total Likes
this actually works I used it on Validate
if(!/^\d{5}(-\d{4})?$/.test(this.rawValue))
Views
Replies
Total Likes
I have the nine-digit pattern set up in LiveCycle (e.g.,12345-1234), so I revised the code a bit and it shows up: if(!/^\d{5}(\d{4})?$/.test(this.rawValue))
Thanks!
Views
Replies
Total Likes