This is code we have on production (even added a comma for you).
Normally you shouldn't use try/catch for validation, but it works well here.
Then we select the “Validate” tab to see the validation options: The default is that the field will not get validated.
For numeric fields, there is a convenient way to validate a value range, but we want to select to run a custom validation script.
Also, I have no control over the design, or on how that address string comes to my function, I can't add the email validation in the UI, so I am helpless there... This is not always desired (for more complicated data, it will probably be much easier to take a look, correct that one typo and continue with the rest of the form), so my preference is actually to mark the field so that the user knows which field needs to be corrected, and have the validation script not report a validation error back to the field: Using this method has implications on the form submission process: The form no longer can verify that the data is correct, so the submission function needs to do another round of validation to see if any of the required fields are not correct (one way to do that is to test all relevant fields to see if the text color is using the error color, or we can use global variables to store the validation state).Another thing I like to do is to display the validation error message on the form in an otherwise hidden field: The problem with our last solution is that if the user saves a partially filled form, and picks it up at a later time, that error message that popped up is long gone, and the only indication that there is something wrong with the form is the modified field color.If you look at the Wikipedia article for valid email address, it supports a lot of special characters. (DOT) and it can contain characters, digits and special characters – and _.