shankar-thiyagaraajan / javascript-form-validator
0.9
2017-05-02 02:33 UTC
This package is not auto-updated.
Last update: 2019-02-20 19:12:33 UTC
README
安装
git clone https://github.com/global-source/javascript_form_validator.git
git checkout -b [VERSION]
为什么是我?
- 支持 原生 和 ES6 JavaScript,
- 纯 JavaScript 代码(无依赖),
- 简化实现,
- HTML 5 验证支持所有浏览器,
- 可靠的动态 DOM 验证级别,
- 与元素动态自动滚动。
将验证器集成到表单的步骤
<script src="formValidator.js"></script> or <script src="formValidator.es6.js"></script>
然后,将您的表单与验证器集成。
var myform = new jsValidator().init({ form: 'form2submit', // #id });
选项
名称 | 值 | 描述 | 必需 |
---|---|---|---|
form | #ID | ID 用于处理验证和过滤器。 | 是 |
forceFilter | 布尔值 | True,允许不进行表单验证即可进行表单过滤器。 False,默认。 | 否 |
message | 对象 | 所有 HTML 元素的响应消息。 | 否 |
日志 | 布尔值 | 在控制台上启用错误日志。 | 否 |
操作
check()
:根据表单是否有效返回。
// Retrun status as True|False. myform.check()
update()
:更新新创建的 DOM 元素到验证器。
// It will update the DOM. myform.update()
属性
名称 | 值 | 描述 |
---|---|---|
required | True, False | 设置字段为必填项,以提交表单。 |
min | Integer | 设置最小值以进行操作。 |
max | Integer | 设置最大值以进行操作。 |
data-maxlength="10" | Integer | 设置字符的最大长度以进行操作。 |
maxLength="10" | Integer | 设置字符的最大长度以进行操作。 |
type="password" | AlphaNumeric | 设置和比较密码。 |
type="email" | AlphaNumeric | 检查电子邮件是否有效。 |
type="file" | string ['png,jpeg..'] | 检查是否允许文件格式。 |
data-message="Error Message" | String | 用户定义的,基于元素的直接错误消息以进行处理。 |
data-allow="onlyAlpha" | Alphabets Only | 仅允许字符串,不允许数字和特殊字符。 |
data-allow="string" | Alphabets + Numbers Only | 仅允许字符串和数字,不允许特殊字符。 |
data-allowSpecial="/_+" | Special characters | 仅允许给定的特殊字符。 |
[INDEX] | Numeric | 现在支持 Min&Max 验证以显示限制。 |
当前验证将在提交按钮触发时触发。
它具有自动监听器以监控表单上的每个更改。
注意
- 验证在标签之间进行,因此需要指定表单的 ID 或其他标签。
或任何其他标签。
<form id="form2submit"> </form> // Preferred <div id=form2submit> </div> // Not-Preferred.
通用输入验证
- 输入字段应指定验证类型。
<form method="post" id="form2submit" novalidate> <div> <label>Only Alpha</label> <input type="text" data-allow="onlyAlpha" name="alpha" data-message="<b style='color:green'>This field is required.</b>" required> </div> <div> <label>String</label> <input type="text" data-allow="string" data-message="This also required." data-allowSpecial="+-" name="string" required> </div> <div> <label>Pattern</label> <input type="text" pattern="^[0-5]+$" data-allowSpecial="/-" name="pattern"> </div> <div> <label>Number</label> <input type="number" name="number" required> </div> <div> <label>Min Validator</label> <input type="text" name="myNumber" min="5" max="10" required> </div> <div> <label>Email Validator</label> <input type="email" name="email" required> </div> <div> <label for="file">File</label> <input type="file" required class="form-control" id="file" data-extensions="png,jpeg,jpg" name="file"> </div> <div> <label>Password</label> <input type="password" name="password" data-check="repassword" id="password" required> </div> <div> <label>Password</label> <input type="password" name="password" data-check="repassword" id="password" required> </div> <div> <label>List</label> <select name="list" required> <option value="item1">Item1</option> <option value="item2">Item2</option> <option value="item3">Item3</option> </select> </div> <div> <label>Description</label> <textarea required name="desc"></textarea> </div> <div> <input type="submit" value="Submit"> </div> </form>
-
在表单中使用
novalidate
来避免浏览器中断。<form method="POST/GET/PUT/PATCH/DELETE" action="PATH-TO-HANDLE" id="form2submit" novalidate> ... ... </form>
示例
// For Native & ES6 Javascript. var myform = new jsValidator().init({ form: 'form2submit', // #id forceFilter: true, message: { required: 'This field is required !', min: '<br><span style="color: red;">This field is less then the limit</span>', max: 'This field is exceeds the limit', password: 'Password doesn\'t match !', email: 'Invalid Email found !', file: 'Invalid File format given' } });
它将自动监听 提交 事件并启动验证检查。根据响应,它将允许提交或显示消息。
许可
版权(c)2016 Shankar Thiyagaraajan