jQuery-Validation-Engine插件的使用(1)【译】

2024-06-09 21:38

本文主要是介绍jQuery-Validation-Engine插件的使用(1)【译】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

github上的地址https://github.com/posabsolute/jQuery-Validation-Engine

简要

jQuery validation engine是一个致力于解决在各浏览器下实现表单验证的javascript插件(IE 6-8, Chrome, Firefox, Safari, Opera 10). 插件提供了视觉提示,吸引用户关注。

Validations 插件的适用范围从 email, phone, URL到更复杂的如ajax过程或常规的javascript函数,捆绑在许多地方,错误提示可以翻译成你所选择的语言。

Screenshot

Documentation :

Nicer documention

Release Notes

Demo :

http://www.position-relative.net/creation/formValidator/

安装

存档里有什么?

存档里当然包括核心库,和翻译成的各种语言版。它也包括一系列的demo包和一个简单的ajax服务实例(built in Java and php).

  1. 解压存档
  2. 引入jquery, jquery.validationEngine.closure.js
  3. 选择你需要的语言版本的包: jquery.validationEngine-XX.js
  4. 阅读说明 理解api

运行demo

大多数的demo都可以通过简单的打开一个html文件运行,但是ajax的demo需要一个java6的http服务器去运行。

  1. 从文件夹里运行脚本 runDemo.bat (Windows) 或 runDemo.sh (Unix)
  2. 打开浏览器到 http://localhost:9173

运用

参考

第一步,在页面引入jquery

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.js" type="text/
javascript"></script>

然后引入 jquery.validationEngine和 它的本地语言包

<script src="js/jquery.validationEngine-en.js" type="text/javascript" charset="utf-8"></script>
<script src="js/jquery.validationEngine.js" type="text/javascript" charset="utf-8"></script>

最后引入目标主题

<link rel="stylesheet" href="css/validationEngine.jquery.css" type="text/css"/>

验证域

Validations通过在class属性中定义来起作用。这里有一些例子来演示它怎么来做的。

<input value="someone@nowhere.com" class="validate[required,custom[email]]" type="text" name="email" id="email" />
<input value="2010-12-01" class="validate[required,custom[date]]" type="text" name="date" id="date" />
<input value="too many spaces obviously" class="validate[required,custom[onlyLetterNumber]]" type="text" name="special" id="special" />

有关验证的更多细节,请参考下面的部分。

验证性属性 data-validation-engine

我们当前在用一些更新标准替换class属性,在bete版中这个特性被考虑并起作用。

标准HTML5属性的错误信息

用data-errormessage和data-errormessage-* 属性在表单元素中定制错误信息。

<input type="email" name="email" id="email" data-validation-engine="validate[required,custom[email]]"data-errormessage-value-missing="Email is required!" data-errormessage-custom-error="Let me give you a hint: someone@nowhere.com" data-errormessage="This is the fall-back error message."/>

运用下列属性规则的值将被加载。

data-errormessage-value-missing
  • required
  • groupRequired
  • condRequired
data-errormessage-type-mismatch
  • past
  • future
  • dateRange
  • dateTimeRange
data-errormessage-pattern-mismatch
  • creditCard
  • equals
data-errormessage-range-underflow
  • minSize
  • min
  • minCheckbox
data-errormessage-range-overflow
  • maxSize
  • max
  • maxCheckbox
data-errormessage-custom-error
  • custom
  • ajax
  • funcCall
data-errormessage
  • a generic fall-back error message一个通用的错误信息

每一个表单域提示的显示方向

提示的方向是可以通过用data属性来定义的。

<input value="http://" class="validate[required,custom[url]] text-input" type="text" name="url" id="url" data-prompt-position="topLeft" />
<input value="" class="validate[required] text-input" type="text" name="req" id="req" data-prompt-position="bottomLeft" />
<input value="too many spaces obviously" class="validate[required,custom[onlyLetterNumber]]" type="text" name="special" id="special" data-prompt-position="bottomRight" />

提示位置的调整

提示位置可以通过表单域的data属性提供的shiftX和shiftY来调整。提示条的出现位置将被替换为(defaultX+shiftX),(defaultY+shiftY)

<input value="http://" class="validate[required,custom[url]] text-input" type="text" name="url" id="url" data-prompt-position="topLeft:70" />
<input value="" class="validate[required] text-input" type="text" name="req" id="req" data-prompt-position="bottomLeft:20,5" />
<input value="too many spaces obviously" class="validate[required,custom[onlyLetterNumber]]" type="text" name="special" id="special" data-prompt-position="bottomRight:-100,3" />

实例化

验证程序通常使用以下格式的呼叫:

$("#form.id").validationEngine();

没有任何参数的方法,init()和attach()自动调用。

$("#form.id").validationEngine(action or options);

可能需要一个或几个参数的方法,一个动作(参数)或列表的选项来定制行为引擎。

<form id="formID" method="post" action="submit.action"><input value="2010-12-01" class="validate[required,custom[date]]" type="text" name="date" id="date" />
</form>

下面的代码将实例化验证引擎,绑定表单

<script>
$(document).ready(function(){
    $("#formID").validationEngine();
   });
</script>

当使用选项,默认行为是只初始化validationengine附件,所以需要人工完成。

<script>
$(document).ready(function(){
    $("#formID").validationEngine('attach', {promptPosition : "centerRight", scroll: false});
   });
</script>

所有的电话都validationengine()可链式操作的,所以可以如下:

$("#formID").validationEngine().css({border : "2px solid #000"});

这篇关于jQuery-Validation-Engine插件的使用(1)【译】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/1046373

相关文章

C++11右值引用与Lambda表达式的使用

《C++11右值引用与Lambda表达式的使用》C++11引入右值引用,实现移动语义提升性能,支持资源转移与完美转发;同时引入Lambda表达式,简化匿名函数定义,通过捕获列表和参数列表灵活处理变量... 目录C++11新特性右值引用和移动语义左值 / 右值常见的左值和右值移动语义移动构造函数移动复制运算符

Python对接支付宝支付之使用AliPay实现的详细操作指南

《Python对接支付宝支付之使用AliPay实现的详细操作指南》支付宝没有提供PythonSDK,但是强大的github就有提供python-alipay-sdk,封装里很多复杂操作,使用这个我们就... 目录一、引言二、准备工作2.1 支付宝开放平台入驻与应用创建2.2 密钥生成与配置2.3 安装ali

C#中lock关键字的使用小结

《C#中lock关键字的使用小结》在C#中,lock关键字用于确保当一个线程位于给定实例的代码块中时,其他线程无法访问同一实例的该代码块,下面就来介绍一下lock关键字的使用... 目录使用方式工作原理注意事项示例代码为什么不能lock值类型在C#中,lock关键字用于确保当一个线程位于给定实例的代码块中时

MySQL 强制使用特定索引的操作

《MySQL强制使用特定索引的操作》MySQL可通过FORCEINDEX、USEINDEX等语法强制查询使用特定索引,但优化器可能不采纳,需结合EXPLAIN分析执行计划,避免性能下降,注意版本差异... 目录1. 使用FORCE INDEX语法2. 使用USE INDEX语法3. 使用IGNORE IND

C# $字符串插值的使用

《C#$字符串插值的使用》本文介绍了C#中的字符串插值功能,详细介绍了使用$符号的实现方式,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录$ 字符使用方式创建内插字符串包含不同的数据类型控制内插表达式的格式控制内插表达式的对齐方式内插表达式中使用转义序列内插表达式中使用

flask库中sessions.py的使用小结

《flask库中sessions.py的使用小结》在Flask中Session是一种用于在不同请求之间存储用户数据的机制,Session默认是基于客户端Cookie的,但数据会经过加密签名,防止篡改,... 目录1. Flask Session 的基本使用(1) 启用 Session(2) 存储和读取 Se

Java Thread中join方法使用举例详解

《JavaThread中join方法使用举例详解》JavaThread中join()方法主要是让调用改方法的thread完成run方法里面的东西后,在执行join()方法后面的代码,这篇文章主要介绍... 目录前言1.join()方法的定义和作用2.join()方法的三个重载版本3.join()方法的工作原

Spring AI使用tool Calling和MCP的示例详解

《SpringAI使用toolCalling和MCP的示例详解》SpringAI1.0.0.M6引入ToolCalling与MCP协议,提升AI与工具交互的扩展性与标准化,支持信息检索、行动执行等... 目录深入探索 Spring AI聊天接口示例Function CallingMCPSTDIOSSE结束语

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻

在Java中使用OpenCV实践

《在Java中使用OpenCV实践》用户分享了在Java项目中集成OpenCV4.10.0的实践经验,涵盖库简介、Windows安装、依赖配置及灰度图测试,强调其在图像处理领域的多功能性,并计划后续探... 目录前言一 、OpenCV1.简介2.下载与安装3.目录说明二、在Java项目中使用三 、测试1.测