User:Mounir.lamouri/HTML5 Forms: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(→‎Summary: add email type)
(→‎Summary: adding bug ids)
Line 176: Line 176:
|New attribute
|New attribute
|Add predefined suggestions
|Add predefined suggestions
|TBD
|[https://bugzilla.mozilla.org/show_bug.cgi?id=556007 bug 556007]
|None
|None
|- style="background:#ff3000;"
|- style="background:#ff3000;"
Line 182: Line 182:
|New attribute
|New attribute
|Specify the element is required for form validation
|Specify the element is required for form validation
|TBD
|[https://bugzilla.mozilla.org/show_bug.cgi?id=345822 bug 345822]
|None
|None
|- style="background:#ff3000;"
|- style="background:#ff3000;"
Line 188: Line 188:
|New attribute
|New attribute
|Specify the element has to follow a pattern (regexp) for form validation
|Specify the element has to follow a pattern (regexp) for form validation
|TBD
|[https://bugzilla.mozilla.org/show_bug.cgi?id=345512 bug 345512]
|None
|None
|- style="background:#ff3000;"
|- style="background:#ff3000;"
Line 194: Line 194:
|New attribute
|New attribute
|Specify min and max values for form validation
|Specify min and max values for form validation
|TBD
|[https://bugzilla.mozilla.org/show_bug.cgi?id=556010 bug 556010]
|None
|None
|- style="background:#ff3000;"
|- style="background:#ff3000;"
Line 200: Line 200:
|New attribute
|New attribute
|Specify step form numbers
|Specify step form numbers
|TBD
|[https://bugzilla.mozilla.org/show_bug.cgi?id=556009 bug 556009]
|None
|None
|- style="background:#ff3000;"
|- style="background:#ff3000;"
Line 206: Line 206:
|New attribute
|New attribute
|Specify the form shouldn't be validated
|Specify the form shouldn't be validated
|TBD
|[https://bugzilla.mozilla.org/show_bug.cgi?id=556013 bug 556013]
|None
|None
|- style="background:#ff3000;"
|- style="background:#ff3000;"

Revision as of 16:46, 30 March 2010

HTML5 Forms is a part of the HTML5 specifications about forms. It introduces new elements, and new input types which aim to help web developers to not re-invent what is already well known. For example, with HTML5 Forms, web developers will not have to write javascript code to tell you a field is required or to check your email address is valid.

Implementation status

Wikipedia offers a non-exhaustive overview of the implementation for the main layout engines: http://en.wikipedia.org/wiki/Comparison_of_layout_engines_%28HTML5%29#Form_elements_and_attributes

A comparison between the different browsers: http://www.findmebyip.com/litmus/#html5-forms-inputs

Proposed implementation strategy

The proposed implementation strategy (not really respected at the moment) is to work on new elements then new input types so we can work on other things with a more general point of view.

New elements have to be split in two: listed elements [1] and non-listed elements. The missing listed elements (keygen, datalist, output) are going to be used internally (constraint validation api) or to use new stuff (like new attributes). It would be easier to have them added as soon as possible. The non-listed elements (progress and meter) are low priority because they are not needed by other stuff and do not need anything too.

Then, we need a minimalistic implementation of the new input types/states for the same reason. We do not need to have a full and working implementation and certainly not specific UIs.

Follows the constraint validation and new attributes which may be easier to implement with all elements and input states available. Easier because the implementation would be doable in one time.

Finally comes the new non-listed elements and the specific UIs like color picker, date picker, etc.

Note: this is a global strategy and for some reason it may be not respected. For example, the maxlength attribute is only available for input and textarea elements, we do not need the new elements to work on them.

Summary

Name Type Description Bug ID(s) Status
Placeholder New Attribute The placeholder shows a hint to the user bug 457800 Done
Maxlength New attribute Limit the text length of an input or textarea element bug 535043 bug 536891 bug 536895 Done
Search New input type New input type for search boxes bug 456229 Pending review
Autofocus New attribute Focus an element on the page load bug 546995 Pending review
Button type behavior Misc/Bug fix Fix the button type behavior to fit the new specifications bug 551670 Pending review
Select size relation with multiple Misc/Bug fix Set the default element size depending on the multiple attribute bug 551846 Pending review
Legend element and form attribute Misc/Bug fix Legend element form has to be the fieldset form or null bug 555567 Pending review
Constraint Validation API Misc Implement the constraint validation API (constraints come with attributes) bug 345624 Pending review
keygen New listed element Implement keygen element (there is a hack at the moment) bug 101019 None
datalist New listed element Implement the datalist bug 555840 None
output New listed element Implement the output element bug 346485 None
email New input type New input type for email adresses bug 555559 None
url New input type New input type for url's/uri's bug 344615 None
color New input type New input type for colors bug 547004 None
telephone New input type New input type for telephone numbers TBD None
number New input type New input type for numbers bug 344616 None
range New input type New input type for floating numbers bug 344618 None
date New input type New input type related to date/time bug 446510 None
datetime New input type New input type related to date/time TBD None
month New input type New input type related to date/time TBD None
week New input type New input type related to date/time TBD None
time New input type New input type related to date/time TBD None
datetime-local New input type New input type related to date/time TBD None
autocomplete New attribute Auto-completion with earlier user inputs TBD None
list New attribute Add predefined suggestions bug 556007 None
required New attribute Specify the element is required for form validation bug 345822 None
pattern New attribute Specify the element has to follow a pattern (regexp) for form validation bug 345512 None
min/max New attribute Specify min and max values for form validation bug 556010 None
step New attribute Specify step form numbers bug 556009 None
novalidate New attribute Specify the form shouldn't be validated bug 556013 None
progress New non-listed element Implement the progress element bug 514437 None
meter New non-listed element Implement the meter element bug 555985 None
Specifics UI Specific UI for element meta meta None