2016-06-26 4 views
1
<form action=""> 
    First name: <input type="text" required name="FirstName" value=""><br> 
    Last name: <input type="text" name="LastName" value="Mouse"><br> 
    <input type="submit" value="Submit"> 
</form> 

Можно ли каким-либо образом уловить проверку html5? Как первое поле имени запрещено, когда я нажимаю кнопку «Отправить», используя javascript, есть ли способ узнать, что есть блокировка html5?Обнаруживать проверку html5 с помощью javascript

+0

Вы можете легко отключить проверку браузера с '<форма NOVALIDATE />' или проверить, есть ли проверка с ответами на этот вопрос: http://stackoverflow.com/ вопросы/8550642/check-if-a-browser-has-built-in-html5-form-validation –

+1

https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation# Constraint_validation_process и вот полезное чтение: https://www.sitepoint.com/html5-forms-javascript-constraint-validation-api/ –

ответ

1

Атрибуты для отправки формы, которые могут быть указаны в виде элементов, действие ENCTYPE, метод NOVALIDATE и цели.

Соответствующие атрибуты для представления формы, которые могут быть заданы на кнопках представляют formaction, formenctype, formmethod, formnovalidate и formtarget. Когда они опущены, они по умолчанию имеют значения , указанные в соответствующих атрибутах элемента формы.

так, как сказал его W3 в пункте ниже вы можете либо установить NOVALIDATE на элемент формы или добавить formnovalidate на кнопку отправки, чтобы остановить html5 от проверки формы и получить контроль проверки его.

просто помните, что с этим действием вы потеряете все возможности проверки, и вам придется проверять каждое поле самостоятельно.

с другой стороны, возможно, вы просто хотите знать, поддерживает ли браузер поддержку html5. в этом случае вы можете использовать этот код:

if (typeof document.createElement('input').checkValidity != 'function') 
    document.getElementsByTagName("form")[0].setAttribute("novalidate", "") 
Смежные вопросы