I'm getting the red border to show up when the form loads for a User Entered - Recommended textbox . Seems the Validate event is firing when the form initializes. There is no data connection, so the textbox is not being assigned a value. Anyone know how to stop this?
What a long thread! I didnt get chance to read it all but I think that your problem can be resolved as follows:
When you click the submit email button and you have required fields ,an option in Acrobat tells it to highlight it in red. Therefore if you wish to keep the required fields on you will need to set Acrobat to display the highlighted border to be the same colour as your text box. You can do this in Acrobat by going to Edit > Preferences > Forms and changing the colour of the required fields colour to one that is the same as your text box. I could not see a way to disable this.
Alternatively remove the required fields and add some validation into a normal button first to determine if the text field is valid or not. If it is you can get the form to display your email button then.
I hope this helps
> Your file type (static/dynamic) could also influence this behavior..
> Pls see the attached document (see page #8) which explains about the rendering static/dynamic pdfs...
I already read that documantation before, though I don't think this is the problem. (But you're right... it looks quite much of a change to dynamic with a scripted border)
Something not listed in there is, that in static forms you have to extra write something if you make a field required by choice to get a read border.
In dynamic forms it appears automatically. But it only surrounds the input box. (Though normally the "border" you script means the border of the entire field in dynamic.)
Exception are the radiobuttons.
I forgot to say Thank You for the responses so far. I have learned a lot from them. I appreciate it.
Haven't read everything... but writing a individual validation script for every field can get quite a bit of work.
(I know what kind of pain this can get, since I added a script in one of my forms that automatically prints and sends via mail when the user has filled out all mandatory fields. If not it first brings up the e-mail error message then jumps to the next mandatory field ... it was good for experimenting though...)
Why don't you just make it the other way round. make the field via script only then mandatory if it is no value entered. (Probably on a pre-submit event or something like that.)
If you refer to the field with "this", you can use the same script for every field... just copy and paste.
if (this.rawValue == null || this.rawValue == "")
this.validate.nullTest = "error";
this.assist.toolTip.value = "This field is mandatory, please provide a response...";
You could also tiptoe around the validation itself with some similar script.
I'd make one invisible field that gets true or false values from the mandatory fields. If a mandatory field is left blank and the field changes to false all mandatory fields will be bordered. (Alternativly: all mandatory fields not filled out are bordered.)