Minor rant about telephone number inputs on web forms. Ignore this if you have heard it before.
The only time structured editing for the domain of telephone numbers works is when the user is entering a familiar number. Their eyes are on the form, and they can watch how the cursor moves between the area code, exchange number, and line number input regions as they type. For all other telephone numbers, structured editing fails, and fails badly. They won't be able to correct a small mistake because the domain editor is too rudimentary. Their only recourse is to reenter the whole number with their eyes alternating between the input and the source, one digit at a time.
This failure is especially galling because US telephone numbers are easily parsed with a trivial regular expression during form validation. Ignore everything but digits; if the count of digits is 7 then it is local, if 10 it is complete, and if 11 (and starts with 1) it is international.
Please let the user type the number however they want it formatted and validate it later using
Oh, and please do the same for social security numbers.const digits = input.replace(/[^\d]/g, ''); if ...
Rant over.
P.S. I have recently been looking for a new job, and many application forms have this problem. It is a small inconvenience for possible employment.
