Dijit Validation Widgets

TextBox class, tabIndex=2, Attributes: {trim: true, propercase: true, intermediateChanges: true, style: 'width:700px', selectOnClick: true}, First letter of each word is upper case.

onChange:
TextBox class, Attributes: {trim: true, uppercase: true, "class": 'verylong'}, all letters converted to upper case.
NumberTextBox class, tabIndex=1, Attributes: {trim: true}, no initial value specified, tooltipPosition=[above, below]. Displays a prompt message if field is blank.
onChange:
NumberTextBox class, Attributes: required=true, must be integer, no messages provided, no initial value specified, maxlength=3
ValidationTextBox class, Attributes: {lowercase: true, required: true, "class": verylong, style: font-size: 15pt;}. Displays a prompt message if field is blank.
IntegerTextBox class, Attributes: {required: true, min:-20000, max:+20000 }, displays a prompt message if field is blank, thousands separator remains during editing. Enter feet above sea level with a sign.
onChange:
CurrencyTextBox class, Attributes: {fractional: true}. Enter whole and cents. Currency symbol is optional. Cents are MANDATORY.
USD  onChange:
euro currency (local format) fractional part is optional: EUR
euro currency (fixed lang: de-de) programmatically created, fractional part is optional: EUR
RegexpTextBox class, Attributes: {required: true}
(just a test that type attribute is obeyed)
value: null should show up as empty
a test that readOnly and disabled are understood for TextBox
a test that disabled is understood for ValidationTextBox
a test that placeholder works for TextBox. 10px padding added for testing.

Tooltip positioning

These buttons switch the positions searched to try to place the validation error tooltips. Note that setting tooltip positioning to "above" or "below" is dangerous if you have a node with a dropdown, but the drop down might overlap the tooltip.

Validation tooltips inside of dialogs: