찾다
웹 프론트엔드H5 튜토리얼HTML5의 8가지 양식 유효성 검사 방법에 대한 자세한 소개

양식 유효성 검사에 대해 심도 있게 논의하기 전에 먼저 양식 유효성 검사의 진정한 의미에 대해 생각해 보겠습니다. 기본적으로 양식 유효성 검사는 유효하지 않은 제어 데이터를 감지하고 최종 사용자에게 이러한 오류를 표시하는 시스템입니다. 즉, 양식 유효성 검사는 양식이 서버에 제출되기 전에 양식에 대해 일련의 검사를 수행하고 사용자에게 오류를 수정하도록 알립니다.
그런데 양식 유효성 검사란 실제로 무엇입니까?
은 최적화입니다.
양식 유효성 검사가 최적화인 이유는 양식 유효성 검사 메커니즘만으로는 서버에 제출된 양식 데이터가 올바르고 유효한지 확인하기에 충분하지 않기 때문입니다. 반면에 양식 유효성 검사는 웹 응용 프로그램에서 오류가 더 빨리 발생하도록 설계되었습니다. 즉, 브라우저에 내장된 처리 메커니즘을 사용하여 웹 페이지에 잘못된 양식 컨트롤 값이 포함되어 있음을 사용자에게 알리는 것이 가장 좋습니다. 과거에는 서버가 사용자에게 잘못된 데이터를 입력했음을 알리기 위해 네트워크를 통해 데이터가 이동했습니다. 브라우저가 클라이언트를 떠나기 전에 오류를 포착할 수 있는 능력이 충분하다면 이를 활용해야 합니다.
그러나 브라우저 양식 확인만으로는 모든 오류를 처리하기에 충분하지 않습니다.
그런데 HTML5에는 양식 컨트롤의 데이터 정확성을 검증하는 8가지 방법이 도입되었습니다. 차례로 살펴보겠습니다. 먼저 유효성 검사 상태를 피드백하는 데 사용되는 ValidityState 개체를 소개하겠습니다.
Html5 양식 유효성 검사를 지원하는 브라우저에서 ValidityState 개체는 양식 컨트롤을 통해 액세스할 수 있습니다.

var valCheck = document.myForm.myInput.validity;

이 코드 줄은 myInput이라는 양식 요소의 ValidityState 개체를 가져옵니다. 객체에는 8가지 확인 상태 모두에 대한 참조와 최종 확인 결과가 포함되어 있습니다.
호출 방법은 다음과 같습니다.

valCheck.valid

실행 후 양식 컨트롤이 모든 유효성 검사 제약 조건을 통과했는지 여부를 나타내는 부울 값을 얻습니다. 유효한 속성은 최종 검증 결과로 간주될 수 있습니다. 8개의 제약 조건이 모두 통과되면 유효한 속성은 true이고, 그렇지 않으면 하나의 제약 조건이 실패하는 한 유효한 플래그는 false입니다.
앞서 언급했듯이 모든 양식 요소에는 8가지 유효성 검사 제약 조건이 있습니다. 각 조건에는 적절한 방법으로 액세스할 수 있는 ValidityState 개체에 해당 속성 이름이 있습니다. 양식 컨트롤과 어떻게 연관되어 있는지, ValidityState 개체를 기반으로 확인하는 방법을 알아보기 위해 하나씩 분석해 보겠습니다.
1. valueMissing
목적: 양식 컨트롤이 채워졌습니다.
사용법: 양식 컨트롤에서 필수 속성을 true로 설정합니다.
예:

<input type="text" name="myText" required>

상세 설명: 양식 컨트롤이 필수 속성을 설정하는 경우 사용자가 값을 입력하거나 코드 호출을 통해 값을 채울 때까지 컨트롤은 유효하지 않은 상태로 유지됩니다. . 예를 들어 빈 텍스트 입력 상자는 텍스트를 입력하지 않으면 필수 확인에 실패합니다. 입력 값이 비어 있으면 valueMissing이 true를 반환합니다.
2. typeMismatch
목적: 컨트롤 값이 예상 유형(예: numbe, email, URL 등)과 일치하는지 확인합니다.
용도: 유형 속성 값을 지정합니다. 양식 컨트롤의.
예:

<input type="email" name="myEmail">

상세 설명: 특수한 양식 컨트롤 유형은 휴대폰 키보드를 사용자 정의하는 데만 사용되는 것이 아닙니다. 브라우저가 양식 컨트롤의 입력이 해당 규정을 준수하지 않는다는 것을 인식할 수 있는 경우. 이메일 주소에 @ 기호가 없거나 숫자 유형 컨트롤의 입력 값이 유효한 숫자가 아닌 등의 유형 규칙이 있으면 브라우저는 유형 불일치를 나타내기 위해 컨트롤을 표시합니다. 오류 조건에 관계없이 typeMismatch는 true를 반환합니다.
3. 패턴 불일치
목적: 양식 컨트롤에 설정된 형식 규칙에 따라 입력이 유효한 형식인지 확인합니다.
사용법: 양식 컨트롤에 패턴 속성을 설정하고 적절한 일치 규칙을 할당합니다.
예:

<input type="text" name="creditcardnumber" pattern="[0-9]{16}" title="A credit
card number is 16 digits with no spaces or dashes">

세부 정보: 패턴 속성은 개발자에게 양식 제어 값에 대한 정규식 유효성 검사 메커니즘을 설정하는 강력하고 유연한 방법을 제공합니다. 컨트롤에 대해 패턴 속성이 설정된 경우, 입력 컨트롤의 값이 패턴 규칙을 준수하지 않는 한, PatternMismatch는 참값을 반환합니다. 사용자 안내 및 기술 참조 관점에서 규칙의 역할을 설명하려면 패턴 속성이 포함된 양식 컨트롤에 제목 속성을 설정해야 합니다.
4.tooLong
목적: 입력값에 문자가 너무 많이 포함되는 것을 방지합니다.
사용법: 양식 컨트롤에 maxLength 속성을 설정합니다.
예:

<input type="text" name="limitedText" maxLength="140">

상세: 입력값의 길이가 maxLength를 초과하는 경우 tooLong 기능이 true를 반환합니다. 양식 컨트롤은 일반적으로 사용자 입력의 최대 길이를 제한하지만 프로그래밍 방식으로 설정하는 등 최대 길이를 초과할 수 있는 경우가 있습니다.
5. rangeUnderflow
목적: 숫자 컨트롤의 최소값을 제한합니다.
사용법: 양식 컨트롤의 min 속성을 설정하고 허용되는 최소값을 지정합니다.
예:

<input type="range" name="ageCheck" min="18">

상세 설명: 수치 범위 확인이 필요한 폼 컨트롤에서 값이 일시적으로 설정된 하한보다 낮을 가능성이 높습니다. 이때 ValidityState의 rangeUnderflow 속성은 true를 반환합니다.
6. rangeOverflow
목적: 수치 제어의 최대값을 제한합니다.
사용법: 양식 컨트롤의 max 속성을 설정하고 허용되는 최대값을 지정합니다.
예:

<input type="range" name="kidAgeCheck" max="12">

详细说明:与rangeUnderflow类似,如果一个表单控件的值比max更大,特性将返回true。
7、stepMismatch
目的:确保输入值符合min、max及step即设置。
用法:为表单控件设置step特性,指定数值的增量。
示例:

<input type="range" name="confidenceLevel" min="0" max="100" step="5">

详细说明:此约束条件用来保证数值符合min、max和step的要求。换句话说,当前值必须是最小值与step特性值的倍数之和。例如,范围从0到100,step特性值为5,此时就不允许出现17,否则stepMismatch返回true值。
8、customError
目的:处理应用代码明确设置及计算产生的错误。
用法:调用setCustomValidity(message)将表单控件置于customError状态。
示例:

passwordConfirmationField.setCustomValidity("Password values do not match.");

详细说明:浏览器内置的验证机制不适用时,需要显示自定义验证错误信息。当输入值不符合语义规则时,应用程序代码应设置这些自定义验证消息。
自定义验证消息的典型用例是验证控件中的值是否一致。例如,密码和密码确认两个输人框的值不匹配。只要定制了验证消息,控件就会处于无效状态,并且customError返回true。要清除错误,只需在控件上调用setCustomValidity("")即可。

以上就是详解HTML5中表单验证的8种方法介绍 的内容,更多相关内容请关注PHP中文网(www.php.cn)!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
HTML의 H5 태그는 무엇입니까?HTML의 H5 태그는 무엇입니까?May 09, 2025 am 12:11 AM

HTML의 H5 태그는 작은 타이틀 또는 하위 타이틀을 태그하는 데 사용되는 5 레벨 타이틀입니다. 1) H5 태그는 컨텐츠 계층을 개선하고 가독성과 SEO를 개선하는 데 도움이됩니다. 2) CSS와 결합하여 스타일을 사용자 정의하여 시각적 효과를 향상시킬 수 있습니다. 3) 학대를 피하고 논리적 컨텐츠 구조를 보장하기 위해 H5 태그를 합리적으로 사용하십시오.

H5 코드 : 웹 구조에 대한 초보자 안내서H5 코드 : 웹 구조에 대한 초보자 안내서May 08, 2025 am 12:15 AM

HTML5에서 웹 사이트를 구축하는 방법에는 다음이 포함됩니다. 1. 의미 태그를 사용하여 웹 페이지 구조를 정의하는 등; 2. 멀티미디어 컨텐츠, 사용 및 태그를 포함; 3. 양식 검증 및 로컬 스토리지와 같은 고급 기능을 적용하십시오. 이 단계를 통해 명확한 구조와 풍부한 기능을 갖춘 최신 웹 페이지를 만들 수 있습니다.

H5 코드 구조 : 가독성을위한 컨텐츠 구성H5 코드 구조 : 가독성을위한 컨텐츠 구성May 07, 2025 am 12:06 AM

합리적인 H5 코드 구조를 사용하면 페이지가 많은 컨텐츠 중에서 눈에 띄게 나타납니다. 1) 구조를 명확하게하기 위해 컨텐츠를 구성하려면 시맨틱 레이블 등을 사용하십시오. 2) Flexbox 또는 그리드와 같은 CSS 레이아웃을 통해 다른 장치에 대한 페이지의 렌더링 효과를 제어하십시오. 3) 반응 형 디자인을 구현하여 페이지가 다른 화면 크기에 맞게 조정되도록하십시오.

H5 대 구형 HTML 버전 : 비교H5 대 구형 HTML 버전 : 비교May 06, 2025 am 12:09 AM

HTML5 (H5)와 이전 버전의 HTML의 주요 차이점은 다음과 같습니다. 1) H5는 시맨틱 태그를 소개하고, 2) 멀티미디어 컨텐츠를 지원하며 3) 오프라인 스토리지 기능을 제공합니다. H5는 새로운 태그 및 API (예 : 및 태그)를 통해 웹 페이지의 기능과 표현성을 향상시켜 사용자 경험 및 SEO 효과를 향상 시키지만 호환성 문제에주의를 기울여야합니다.

H5 vs. HTML5 : 용어와 관계를 명확하게합니다H5 vs. HTML5 : 용어와 관계를 명확하게합니다May 05, 2025 am 12:02 AM

H5和HTML5的区别在于:1)HTML5是网页标准,定义结构和内容;2)H5是基于HTML5的移动网页应用,适用于快速开发和营销。

HTML5 기능 : H5의 핵심HTML5 기능 : H5의 핵심May 04, 2025 am 12:05 AM

HTML5의 핵심 기능에는 시맨틱 태그, 멀티미디어 지원, 양식 향상, 오프라인 스토리지 및 로컬 스토리지가 포함됩니다. 1. 코드 가독성 및 SEO 효과 향상과 같은 시맨틱 태그. 2. 멀티미디어 지원은 미디어 컨텐츠 및 태그를 포함하는 프로세스를 단순화합니다. 3. 양식 향상은 새로운 입력 유형 및 검증 특성을 도입하여 양식 개발을 단순화합니다. 4. 오프라인 스토리지 및 로컬 스토리지는 ApplicationCache 및 LocalStorage를 통해 웹 페이지 성능 및 사용자 경험을 향상시킵니다.

H5 : 최신 버전의 HTML 탐색H5 : 최신 버전의 HTML 탐색May 03, 2025 am 12:14 AM

html5isamajorrevisionof thehtml thatrevolutions webdevelopments and capabilitiess.1) itenhancescodereadabilitys 및 and .2) html5enablestriCher, Interactive Experiences, Withoutplugs를 허용합니다

기본 이외 : H5 코드의 고급 기술기본 이외 : H5 코드의 고급 기술May 02, 2025 am 12:03 AM

H5에 대한 고급 팁에는 다음이 포함됩니다. 1. 복잡한 그래픽 사용, 2. 웹 워크를 사용하여 성능 향상, 3. WebStorage, 4. 응답 디자인 구현, 5. WebRTC를 사용하여 실시간 커뮤니케이션을 달성하기 위해, 6. 성능 최적화 및 모범 사례를 수행하십시오. 이 팁은 개발자가보다 역동적이고 대화식 및 효율적인 웹 응용 프로그램을 구축 할 수 있도록 도와줍니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

VSCode Windows 64비트 다운로드

VSCode Windows 64비트 다운로드

Microsoft에서 출시한 강력한 무료 IDE 편집기

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

SublimeText3 Linux 새 버전

SublimeText3 Linux 새 버전

SublimeText3 Linux 최신 버전

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구