# j-Validation

> Компонентът съдържа същия източник-код като компонента j-Validate.

Framework: jcomponent20
Product: jComponent 20 (jcomponent@20)
Language: bg
Content-SHA256: d90430e458bee14e22d1268630b9897422c76e60de8f1a5a770b868f3d69bbc6
Snapshot: c0700e321579725c5cf4f5ace1ad7d2866d1b4f93c24a63c0b41b6b7998e976c
Sources: components@910ed1a86f6e72b4f031d3ad0dc7844f9fc5cb8e
Review: not-recorded

Компонентът съдържа същия източник-код като компонента `j-Validate`.


__Конфигуриране__:

- `if {String}` може да съдържа JS условие за оценка
	- `value {Object}` съдържа цял модел
	- `path {String}` съдържа променлив път
	- __Трябва да се върне Боулеан__
- `selector {String}` jQuery селектор за деактивиране (предварително: `button[name="submit"]`)
- `delay {Number}` за валидиране (предварително: `100`)
- Флагът на `flags {String}` за по-добра валидация може да съдържа компоненти на `visible,hidden,enabled,disabled`
	- `enabled` валидира всички компоненти, които са включени в `input`, `textarea` или `select` елементи
	- `disabled` валидира всички компоненти, които са деактивирани на `input`, `textarea` или `select` елементи
	- `hidden` валидира всички съставки, които са скрити
	- `visible` валидира всички компоненти, които са видими
- `track {String}` може да съдържа пътища, разделени от коммата, и ръчна промяна на всеки път (преди `SET()`, `UPD()`, `INC()`, и т.н.) ще оцени валидацията
- `validonly {Boolean}` състоянието на кораба `dirty` (предварително: `false`)
- __NEW__ `changes {Boolean}` позволява да се сравняват промените само между входния модел и формата (предварително: `false`)
- __NEW__ `strictchanges {Boolean}` позволява стриктно да се сравняват промените (в противен случай стойностите на `null`, `false`, `empty strings` и `0` ще бъдат премахнати), по подразбиране: `false`
- __NEW__ `exec {String}` опция, връзка към `function(data)`, която се изпълнява, когато моделът е валидиран и променян
- __NEW__ `output {String}` опция, връзка към `function(valid)` или път

__Добре е да се знае__:

- компонент добавя клас `ui-validate-ok` към елемента, ако моделът е валиден
- компонент добавя клас `ui-validate-no` към елемента, ако моделът е невалиден
- компонент добавя клас `ui-validate-modified` към елемента, ако моделът се променя

Използвайте го с `<ui-component name="validation">`Когато компонентът все още не е зареден, jComponent Изтегляне на първия адрес в `DEF.fallback` (След това Componentator Източник: Питър Шерка Componentator Съставни съставки, лиценз на MIT.

```html example.html
<!-- REMOVE -->
<ui-component name="textbox" path="model.name" config="required:true">Name</ui-component>
<br />
<br />

<!-- VALIDATION -->
<ui-component name="validation" path="model">
	<button name="submit" disabled="disabled" onclick="show_me()">SUBMIT FORM</button>
</ui-component>

<style type="text/css">
	button:disabled {
		background-color: #cccccc;
		color: #666666;
		cursor: not-allowed;
	}
</style>

<script>
    function show_me() {
        alert('ok');
    }
</script>
```
