15 Star 45 Fork 5

Kenny小狼 / validator-js

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
BSD-3-Clause

Validator-js

前端的验证工具,无其他包依赖无样式,可以适合任何环境,可根据项目环境自行组装提示信息反馈给用户。

兼容IE6以上版及目前流行的浏览器。

usage:

inputselect 元素上,添加 data-validator-options 属性,然后编写json的验证器配置信息,例如:

<input id="login_name" name="login_name"
    data-validator-options="required:true,validType:['loginName','length[6,32]']" >
  • required

    代表验证必填项。

  • validType

    验证的规则组合,string 的数组,注意格式!其中 length[6,32] 的意思是,使用 length 验证规则,并且传入参数为 632

更多验证规则可自行扩展,详细使用例子:参见

在线体验: http://jsrun.net/PYiKp

Todo List

  • INPUT/SELECT元素,支持maxLength和HTML5中一些基础验证属性,requiredpattern
  • 支持minmax,这两个HTML5中对于number和date的验证属性。
  • 精炼代码,替换ES6环境。
  • 支持AMD和CMD。

此项目中的经历

  1. 前端的ES6开发环境

    虽然可以通过babel来实现ES6的基础语法环境,但在转码的过程中,由于一些API,如Symbol不能使用,导致转码后的代码不能使用。另外前端环境上也用不了 Polyfill ,撇开前端js代码中能不能加上这个包(不过你有方法不妨告知,谢谢!),但为了使用一些ES6语法而加上这个庞然大物也是有点尴尬的。

    再加上需要兼容 IE6-8 甚至用forEach都比较困难,最后作出不得不扩展Array对象的决定。所以,用这个包的话,在IE6-8环境下会对Array扩展forEach方法,不喜的童鞋需要注意!

    总结,编写前端框架用babel的体验并不是太好,一边要原生API兼容性问题,一边还要留意转码后的兼容问题,顾虑反而增加了。还不如不用而专注浏览器对原生API的兼容问题好过。当然,也有部分原因是对babel转码特性不熟悉的关系,熟悉后可能后会好点,但换来语法环境值不值得就见仁见智了。

Copyright (c) 2017, Kenny小狼 All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the {organization} nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

简介

轻量,快捷,易扩展的前端的验证工具,无其他包依赖无样式,可以适合绝大部分使用情景,开发人员可根据项目环境自行组装反馈的错误信息给用户。 展开 收起
JavaScript
BSD-3-Clause
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
JavaScript
1
https://gitee.com/kennylee/validator-js.git
git@gitee.com:kennylee/validator-js.git
kennylee
validator-js
validator-js
master

搜索帮助