jQuery 表单验证扩展代码(二)_jquery
在上篇中我已经提到过,验证提示打算用文本和样式两种方式来显示提示消息,这两种提示都只能单独使用,于是新的跟新内容做了一些扩展,使得两者可以共用。前一篇写的是否必填项这个验证只是正对 Text, TextArea 这两个表单元素,在新的扩展中同时也支持了radio,checkbox 两个元素。
二. 验证参数的设计
基于多重选择的考虑,扩展了一些有必要的参数,参数列表如下:
required: 是否为必填项,true 和 false ,true 表示为必填项 (*)
onFocusText: 获得焦点的文字提示
onFocusClass: 获得焦点之后的样式
onErrorText: 验证错误的文本提示
onErrorClass: 验证错误的样式提示
onSuccessText: 验证成功文本提示
onSuccessClass: 验证成功的样式提示
targetId: 提示信息元素的id号
相比之前的做了一些修改,看过之前的文章会知道,我将样式和文本单独分离了,之前是混合在一起的。这也是作为扩展需要的一步考虑。然后变更了错误消息提示参数的名称。
三. 源码解析
jQuery 表单验证扩展之验证是否为必填项源码
$.fn.extend({
checkRequired:function(inputArg){
//只有必填项才去验证,非必填项无意义
if(inputArg.required){
//验证是否是输入框表单
if($(this).is("input") || $(this).is("textarea")){
//获得焦点提示
$(this).bind("focus",function(){
//如果文本存在则不替换提示样式
if ($(this).val() != undefined && $(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("blur",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()!=undefined && $(this).val()!=""){
addMessage(true,inputArg);
}else{
addMessage(false,inputArg);
}
}
});
}
}
}
});
/**
* 根据输入框的不同类型来判断
* @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);
}
}
用过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 验证失败提示
checkbox 验证成功提示
测试代码
[code]
男
女
aa
bb
aa
bb
这里不多说了,文章持续更新中!有问题进一步做修改中.......

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



So verwenden Sie Flask-WTF zur Implementierung der Formularvalidierung. Flask-WTF ist eine Flask-Erweiterung zur Handhabung der Webformularvalidierung. Sie bietet eine übersichtliche und flexible Möglichkeit, vom Benutzer übermittelte Daten zu validieren. In diesem Artikel erfahren Sie, wie Sie die Flask-WTF-Erweiterung zum Implementieren der Formularvalidierung verwenden. Flask-WTF installieren Um Flask-WTF verwenden zu können, müssen Sie es zunächst installieren. Zur Installation können Sie den Befehl pip verwenden: pipinstallFlask-WTF importiert die erforderlichen Module in F

PHP ist eine sehr beliebte Programmiersprache und CodeIgniter4 ist ein häufig verwendetes PHP-Framework. Bei der Entwicklung von Webanwendungen ist die Verwendung von Frameworks sehr hilfreich. Sie können den Entwicklungsprozess beschleunigen, die Codequalität verbessern und die Wartungskosten senken. In diesem Artikel wird die Verwendung des CodeIgniter4-Frameworks vorgestellt. Installation des CodeIgniter4-Frameworks Das CodeIgniter4-Framework kann von der offiziellen Website (https://codeigniter.com/) heruntergeladen werden. Runter

Laravel ist ein beliebtes PHP-Webentwicklungs-Framework, das viele praktische Funktionen bietet, um die Arbeit von Entwicklern zu beschleunigen. Unter diesen ist LaravelValidation eine sehr praktische Funktion, die uns dabei helfen kann, Formularanfragen und vom Benutzer eingegebene Daten einfach zu validieren. In diesem Artikel wird erläutert, wie Sie mit LaravelValidation Formularanfragen validieren. Was ist LaravelValidationLaravelValidation ist La

Die Formularvalidierung ist ein sehr wichtiger Link bei der Entwicklung von Webanwendungen. Sie kann die Gültigkeit der Daten vor dem Absenden der Formulardaten überprüfen, um Sicherheitslücken und Datenfehler in der Anwendung zu vermeiden. Die Formularvalidierung für Webanwendungen kann einfach mit Golang implementiert werden. In diesem Artikel wird erläutert, wie Sie mit Golang die Formularvalidierung für Webanwendungen implementieren. 1. Grundelemente der Formularvalidierung Bevor wir uns mit der Implementierung der Formularvalidierung befassen, müssen wir die Grundelemente der Formularvalidierung kennen. Formularelemente: Formularelemente sind

Für die Verwendung von Middleware zur Formularvalidierung in Laravel sind spezifische Codebeispiele erforderlich. Einführung: In Laravel ist die Formularvalidierung eine sehr häufige Aufgabe. Um die Gültigkeit und Sicherheit der von den Nutzern eingegebenen Daten zu gewährleisten, überprüfen wir in der Regel die im Formular übermittelten Daten. Laravel bietet eine praktische Formularvalidierungsfunktion und unterstützt auch die Verwendung von Middleware zur Formularvalidierung. In diesem Artikel wird detailliert beschrieben, wie Middleware für die Formularvalidierung in Laravel verwendet wird, und es werden spezifische Codebeispiele bereitgestellt.

Tipps zur PHP-Formularvalidierung: So verwenden Sie die Funktion filter_input, um Benutzereingaben zu überprüfen. Einführung: Bei der Entwicklung von Webanwendungen sind Formulare ein wichtiges Werkzeug für die Interaktion mit Benutzern. Die korrekte Validierung von Benutzereingaben ist einer der wichtigsten Schritte zur Gewährleistung der Datenintegrität und -sicherheit. PHP bietet die Funktion filter_input, mit der Benutzereingaben einfach überprüft und gefiltert werden können. In diesem Artikel wird erläutert, wie Sie mit der Funktion filter_input Benutzereingaben überprüfen und relevante Codebeispiele bereitstellen. eins,

PHP ist eine in der Webentwicklung weit verbreitete Skriptsprache, deren Formularvalidierung und Filterung sehr wichtige Bestandteile sind. Wenn der Benutzer das Formular absendet, müssen die vom Benutzer eingegebenen Daten überprüft und gefiltert werden, um die Sicherheit und Gültigkeit der Daten zu gewährleisten. In diesem Artikel werden Methoden und Techniken zur Formularvalidierung und -filterung in PHP vorgestellt. 1. Formularvalidierung Unter Formularvalidierung versteht man die Überprüfung der vom Benutzer eingegebenen Daten, um sicherzustellen, dass die Daten bestimmten Regeln und Anforderungen entsprechen. Zu den üblichen Formularüberprüfungen gehört die Überprüfung erforderlicher Felder, des E-Mail-Formats und des Mobiltelefonnummernformats.

ThinkPHP6 ist ein PHP-basiertes MVC-Framework, das die Entwicklung von Webanwendungen erheblich vereinfacht. Unter diesen ist die Formularvalidierung eine sehr grundlegende und wichtige Funktion. In diesem Artikel stellen wir vor, wie Sie Formularvalidierungsvorgänge in ThinkPHP6 durchführen. 1. Definition von Validierungsregeln In ThinkPHP6 müssen Validierungsregeln im Controller definiert werden. Wir können die Regeln definieren, indem wir ein $validate-Attribut im Controller definieren, wie unten gezeigt: usethinkVa
