text --> regular single line text box
password --> masked text box
textarea --> multiline text
number --> numbers only
e-mail --> with @
tel --> numbers
url --> for urls
button --> a button
radio --> all object with the same in will be in the same group, checked is the default
reset --> like reset button
checkbox --> checked - on
select --> dropdown box - required
list --> dropdown box - optional
color --> color picker
date --|
week --|--> date in different resolutions
month --|
time --> hour and minutes
datetime --> both date and time in the same input box
file --> file browser
image --> image browser
range --> trackbar/slider
search --> search (like textbox, only visual difference)
hidden --> no visible but sent to the server
and many more......
input has many attributes
name --> the name of the imput , as it will be sent to the server
value --> the default text in the input
autocomplete --> to allow autocomplete in the input box, if exists
autofocus --> to set focus of the container on page load
required --> must be filled
readonly --> cannot be filled
disabled --> greyed out
size="" --> the size of the box
minlength="" --> nim length only if written (if not required, can be left empty)
maxlength="" --> max length only if written
autofocus -->focus on this input when page loaded
form="" --> to be a part of the form although written outside
list="" --> a drop down list (referenced in a )
tabindex="" --> the order of TAB
These are all client side validations
** when a submit button is pressed and a field is wrong it get a :invalid
** using input:invalid can be used in css to style the field
as demonstrated in the Name input below
Server-Side validation on the fly, before SUBMIT is called AJAX