이전 기사에서 언급한 것처럼 확인 프롬프트는 텍스트와 스타일 두 가지 방식으로 프롬프트 메시지를 표시하려고 하므로 두 프롬프트 모두 단독으로 사용할 수 있습니다. 새로운 콘텐츠와 새로운 콘텐츠를 함께 사용할 수 있도록 확장이 이루어졌습니다. 이전 글에서 작성한 필수 필드 확인은 Text 및 TextArea 두 가지 양식 요소에만 적용됩니다. 새 확장에서는 radio 및 checkbox 두 가지 요소도 지원됩니다.
2. 검증 매개변수 설계
다중 선택을 고려하여 일부 필수 매개변수 목록을 다음과 같이 확장했습니다.
필수 여부. 필수, true 및 false, true는 필수 항목을 나타냅니다(*)
onFocusText: 포커스를 얻기 위한 텍스트 프롬프트
onFocusClass: 포커스를 얻은 후 스타일
onErrorText: 검증 오류에 대한 텍스트 프롬프트
onErrorClass: 검증 error 스타일 프롬프트
onSuccessText: 검증 성공 텍스트 프롬프트
onSuccessClass: 검증 성공 스타일 프롬프트
targetId: 프롬프트 정보 요소
의 ID 번호가 이전에 비해 수정되었습니다. 이전 기사에서 알 수 있듯이 스타일과 텍스트를 혼합하기 전에 별도로 분리했습니다. 이는 확장 요구를 고려한 단계이기도 합니다. 그런 다음 오류 메시지 프롬프트 매개변수의 이름을 변경했습니다.
3. 소스코드 분석
jQuery 폼 유효성 검사 확장 프로그램의 필수 항목 소스코드인지 확인
$.fn.extend({
checkRequired:function(inputArg){
//필수 필드만 필수 항목이 아닌 항목은 의미가 없습니다
if(inputArg.required){
//입력 상자 형식인지 확인
if($(this).is("input") || $(this).is ("textarea")){
//포커스 프롬프트 가져오기
$(this).bind("focus",function(){
//텍스트가 존재하는 경우, 프롬프트 스타일을 바꾸지 마세요
if ($(this).val() != undefine && $(this).val() != "") {
//올바른 정보 텍스트 표시
addText(inputArg.targetId,inputArg.onSuccessText);
//스타일 전환
addClass(inputArg.targetId,inputArg.onSuccessClass)
}else{
//포커스 텍스트 표시
addText(inputArg.targetId,inputArg.onFocusText);
//스타일 전환
addClass(inputArg.targetId,inputArg.onFocusClass)
}
});
$(this).bind(" 흐림",function(){
if($(this).attr("type")=="radio" || $(this).attr("type ")=="checkbox"){
var name=$(this).attr("name");
var items=$('input[@name="" name ""][checked] ');
if(items.length> ;0){
addMessage(true,inputArg)
}else{
addMessage(false,inputArg)
}
}else {
if($(this).val()!=undefine && $(this).val()!=""){
addMessage(true,inputArg)
}else{
addMessage(false,inputArg);
}
}
})
}
}
}
}); /
function addMessage(flag,inputArg) {
if(flag){
//올바른 정보 텍스트 표시
addText(inputArg.targetId,inputArg.onSuccessText)
//Switch style
addClass(inputArg.targetId,inputArg.onSuccessClass);
}else{
//오류 메시지 텍스트 표시
addText(inputArg.targetId,inputArg.onErrorText)
//Switch style
addClass(inputArg.targetId,inputArg.onErrorClass)
}
}
/**
* 다양한 유형의 입력 상자를 기준으로 결정
* @param {Object} 플래그
* @param {Object} inputArg
*/
function addText(targetId,text){
if( text==정의되지 않음){
text=" "
}
$("#" targetId).html(" " " text);
}
/**
* 표시된 텍스트 정보를 대상 컨트롤에 추가
* @param {Object} targetId 대상 컨트롤 id
* @param {Object} text 표시할 텍스트 정보
*/
function addClass(targetId,className){
if(className!=undefine && className!=""){
$("#" targetId).removeClass()
$( "#" targetId).addClass(className);
}
}
jQuery를 사용해 본 사람이라면 누구나 jQuery가 확장하기 매우 쉬운 프레임워크라는 것을 알고 있을 것입니다. 핵심 라이브러리를 확장합니다. 이 양식 유효성 검사는 이 확장 기능을 기반으로 확장됩니다.
여기서 일부 코드 재사용성 문제도 고려되었으며, 공통 코드가 분리되어 최종 코드가 크게 줄어듭니다.
jQuery 양식 유효성 검사 확장 필수 공통 메서드 추출
코드 복사
/**
* 根据输入框的不同类型来判断
* @param {Object} flag
* @param {Object} inputArg
*/
function addMessage(flag,inputArg){
if(flag){
//显示正确信息文本
addText(inputArg.targetId,inputArg.onSuccessText);
//切换样式
addClass(inputArg.targetId,inputArg.onSuccessClass);
}else{
//显示错误信息文本
addText(inputArg.targetId,inputArg.onErrorText);
//切换样式
addClass(inputArg.targetId,inputArg.onErrorClass);
}
}
/**
* 给目标控件添加显示的文本信息
* @param {Object} targetId 目标控件id
* @param {Object} text 需要显示的文本信息
*/
function addText(targetId,text){
if(text==undefined){
text="";
}
$("#"+targetId).html(" "+text);
}
/**
* 切换样式
* @param {Object} targetId 目标控件id
* @param {Object} className 显示的样式名称
*/
function addClass(targetId,className){
if(className!=undefined && className!=""){
$("#"+targetId).removeClass();
$("#"+targetId).addClass(className);
}
}
/code]
每次不同的验证都会涉及到 添加文本消息,表单元素的不同添加文本消息,和样式的替换,于是分离出来上面三个公用方法。
在源码中 if($(this).attr("type")=="radio" || $(this).attr("type")=="checkbox") 这句是比较重要的一句,因为它涉及到了验证元素的扩展。
四. 使用例子
文本框测试样图
输入文本框获得焦点提示
输入文本框失去焦点错误提示
输入文本验证正确提示
radio 测试样图
checkbox 测试样图
checkbox 验证失败提示
체크박스 验证成功提示
测试代码
[코드]
男
女
aa
bb
aa
bb
这里不多说了,文章持续更新中!有问题进一步做修改中......

如何使用Flask-WTF实现表单验证Flask-WTF是一个用于处理Web表单验证的Flask扩展,它提供了一种简洁、灵活的方式来验证用户提交的数据。本文将向您展示如何使用Flask-WTF扩展来实现表单验证。安装Flask-WTF要使用Flask-WTF,首先需要安装它。可以使用pip命令来安装:pipinstallFlask-WTF导入所需模块在F

Laravel是一个流行的PHPWeb开发框架,它提供了很多方便的功能来加快开发者的工作。其中,LaravelValidation是一种非常实用的功能,它可以帮助我们轻松地验证表单请求和用户输入的数据。本文就将介绍如何使用LaravelValidation验证表单请求。什么是LaravelValidationLaravelValidation是La

PHP是一种非常流行的编程语言,而CodeIgniter4是一种常用的PHP框架。在开发Web应用程序时,使用框架是非常有帮助的,它可以加速开发过程、提高代码质量、降低维护成本。本文将介绍如何使用CodeIgniter4框架。安装CodeIgniter4框架CodeIgniter4框架可以从官方网站(https://codeigniter.com/)下载。下

表单验证是Web应用程序开发中非常重要的一个环节,它能够在提交表单数据之前对数据进行有效性检查,避免应用程序出现安全漏洞和数据错误。使用Golang可以轻松地实现Web应用程序的表单验证,本文将介绍如何使用Golang来实现Web应用程序的表单验证。一、表单验证的基本要素在介绍如何实现表单验证之前,我们需要知道表单验证的基本要素是什么。表单元素:表单元素是指

PHP表单验证技巧:如何使用filter_input函数检验用户输入引言:在开发Web应用程序时,表单是与用户进行交互的重要工具。而正确地验证用户输入,是保证数据的完整性和安全性的关键步骤之一。PHP提供了filter_input函数,可以方便地对用户输入进行验证和过滤。本文将介绍如何使用filter_input函数来检验用户输入,并提供相关的代码示例。一、

PHP作为一种广泛应用于Web开发的脚本语言,其表单验证和过滤是非常重要的一部分。在用户提交表单的过程中,需要对用户输入的数据进行验证和过滤,以确保数据的安全性和有效性。本文将介绍PHP中如何进行表单验证和过滤的方法和技巧。一、表单验证表单验证是指对用户输入的数据进行检查,以确保数据符合特定的规则和要求。常见的表单验证包括对必填项的验证、邮箱格式、手机号码格

ThinkPHP6是一款基于PHP的MVC框架,极大地简化了Web应用程序的开发。其中表单验证是一个非常基础和重要的功能。在这篇文章中,我们将介绍ThinkPHP6中如何进行表单验证操作。一、验证规则定义在ThinkPHP6中,验证规则都需要定义在控制器中,我们可以通过在控制器中定义一个$validate属性来实现规则的定义,如下所示:usethinkVa

在Web开发中,表单验证是一个极其关键的部分。表单验证可以有效地保护数据的安全性,防止非法用户的攻击和恶意操作。在Golang中,表单验证技术也应用广泛,特别是在Web应用程序中。本文将介绍Golang中Web应用程序的表单验证实践。一、表单验证的基本原理在Web应用程序中,表单验证的基本原理是在Web页面提交数据之前进行数据的检查和验证。这些数据可能是用户


핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

안전한 시험 브라우저
안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

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