Fixed #23075 -- Added documentation on novalidate attribute and made it default for admin
Thanks to sehmaschine for the report and to Tim Graham for the review.
This commit is contained in:
parent
5473c36cef
commit
cbdda28208
|
@ -37,7 +37,7 @@
|
|||
</ul>
|
||||
{% endif %}{% endif %}
|
||||
{% endblock %}
|
||||
<form {% if has_file_field %}enctype="multipart/form-data" {% endif %}action="{{ form_url }}" method="post" id="{{ opts.model_name }}_form">{% csrf_token %}{% block form_top %}{% endblock %}
|
||||
<form {% if has_file_field %}enctype="multipart/form-data" {% endif %}action="{{ form_url }}" method="post" id="{{ opts.model_name }}_form" novalidate>{% csrf_token %}{% block form_top %}{% endblock %}
|
||||
<div>
|
||||
{% if is_popup %}<input type="hidden" name="{{ is_popup_var }}" value="1" />{% endif %}
|
||||
{% if to_field %}<input type="hidden" name="{{ to_field_var }}" value="{{ to_field }}" />{% endif %}
|
||||
|
|
|
@ -81,7 +81,7 @@
|
|||
{% endif %}
|
||||
{% endblock %}
|
||||
|
||||
<form id="changelist-form" action="" method="post"{% if cl.formset.is_multipart %} enctype="multipart/form-data"{% endif %}>{% csrf_token %}
|
||||
<form id="changelist-form" action="" method="post"{% if cl.formset.is_multipart %} enctype="multipart/form-data"{% endif %} novalidate>{% csrf_token %}
|
||||
{% if cl.formset %}
|
||||
<div>{{ cl.formset.management_form }}</div>
|
||||
{% endif %}
|
||||
|
|
|
@ -341,6 +341,16 @@ from that ``{{ form }}`` by Django's template language.
|
|||
directly tied to forms in templates, this tag is omitted from the
|
||||
following examples in this document.
|
||||
|
||||
.. admonition:: HTML5 input types and browser validation
|
||||
|
||||
If your form includes a :class:`~django.forms.URLField`, an
|
||||
:class:`~django.forms.EmailField` or any integer field type, Django will
|
||||
use the ``url``, ``email`` and ``number`` HTML5 input types. By default,
|
||||
browsers may apply their own validation on these fields, which may be
|
||||
stricter than Django's validation. If you would like to disable this
|
||||
behavior, set the `novalidate` attribute on the ``form`` tag, or specify
|
||||
a different widget on the field, like :class:`TextInput`.
|
||||
|
||||
We now have a working web form, described by a Django :class:`Form`, processed
|
||||
by a view, and rendered as an HTML ``<form>``.
|
||||
|
||||
|
|
Loading…
Reference in New Issue