定制 hgh/yii-input-validator 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

hgh/yii-input-validator

Composer 安装命令:

composer require hgh/yii-input-validator

包简介

Using this library, You can validate value of any element using rules

README 文档

README

Using this library you can validate value of html inputs.

License Code size

Usage

Register Yii2 Asset

YiiJsEventHandlerAsset::register($this);

Instantiate jQuery Plugin

There are two way of instantiate this jQuery plugin.

Use default attributes

To use default options you have to add two predefined attribute to your html element. You put your rules into data-validation-rules. Separate your rules using space. Then using data-validate-on specify when these input should be validate. The values that you can put in data-validate-on follows jQuery events. Visit Form events, Mouse events and keyboard events .

<input type='text' data-validate-on="change" data-validation-rules="required" />

Define your custom attributes

In other hand, You can define your custom attributes. For this you have to instantiate inputValidator plugin.

$(document).ready(function () {
    $("[data-custom-validate-on]").inputValidator({
        validateOnAttribute: "data-custom-validate-on",  
	validationRulesAttribute: "data-custom-validation-rules",  
	validateValueEvent: "customValidateValue"
    });
});

Now, you can use these attributes like this:

<input type='text' data-custom-validate-on="change" data-custom-validation-rules="required" />

Note: Try to use predefined event but if you define custom validateValueEvent, you have to handle this event yourself. Just predefined evnet is handled.

Handle you custom event like this:

$(document).on("customValidateValue", function (event) {
    var validator = new Validator(
        // Element which its value will validate 
        event.target,
        // Attribute of your element which holds rules for validation 
        "data-custom-validation-rules");
    validator.validate();
});

Rules

Some pattern can have custom message. If any rule get some attributes, it get attributes as a json. Note : You can use multi rules. just separate them using space.

required

Description:

This rule, check length of input value.

Predefined message
This field is required.
Sample
<input type='text' data-validate-on="change" data-validation-rules="required" />

number

Description

This rule, check if the input value is a number or not.

Predefined message
This field should be number.
sample
<input type='text' data-validate-on="change" data-validation-rules="number" />

ne

Description

This rule, check if the input value is not equal to a value.

Predefined message
Invalid value.
sample
<!-- This means the value nust not be equal to 0 -->
<input type='text' data-validate-on="change" data-validation-rules='ne{"value":0,"errorMessage":"This input value should not be equal to 0."}' />

nin

Description

This rule, check if the input value is not in in a list.

Predefined message
The value must follow {pattern}
sample
<!-- This means the value must not be 1, test or 2 -->
<!-- Currently just numbers are supoorted -->
<input type='text' data-validate-on="change" data-validation-rules='nin{"values":[0,1,2],"errorMessage":"This input value should not be equal to 0, 1 or 2."}' />

in

Description

This rule, check if the input value is in in a list.

Predefined message
The value must follow {pattern}
sample
<!-- This means the value must be 1, test or 2 -->
<!-- Currently just numbers are supoorted -->
<input type='text' data-validate-on="change" data-validation-rules='in{"values":[0,1,2],"errorMessage":"This input value should be equal to 0, 1 or 2."}' />

regex

Description

This rule, check if the input value match pattern.

Predefined message
Use only allowed characters follows by {pattern}
sample
<!-- This means the value must follow ^[a-z,_]+$ -->
<input type='text' data-validate-on="change" data-validation-rules='regex{"pattern":"^[a-z,_]+$"}' />

统计信息

  • 总下载量: 0
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 2
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: JavaScript

其他信息

  • 授权协议: MIT
  • 更新时间: 2019-07-13

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固