# j-Validation

> Le composant contient le même code source que le composant j-Validate.

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

Le composant contient le même code source que le composant `j-Validate`.


__Configuration__ :

- `if {String}` peut contenir la condition JS pour l'évaluation
	- Le `value {Object}` contient un modèle complet
	- `path {String}` Contient un changement de chemin
	- __Il faut revenir à Boolean__
- `selector {String}` jQuery pour désactiver (defaut: `button[name="submit"]`)
- `delay {Number}` un temps de validation (defaut : `100`)
- Les drapeaux `flags {String}` pour une meilleure validation peuvent contenir des composants `visible,hidden,enabled,disabled`
	- `enabled` valide tous les composants qui sont activés par des éléments `input`, `textarea` ou `select`
	- `disabled` valide tous les composants qui sont désactivés par des éléments `input`, `textarea` ou `select`
	- `hidden` : tous les composants qui sont cachés
	- Le `visible` valide tous les composants visibles.
- `track {String}` peut contenir des voies divisées par le comma, et le changement manuel de chaque chemin (via `SET()`, `UPD()`, `INC()`, etc.) évalueront la validation
- `validonly {Boolean}` Les vaisseaux `dirty` État (defaut : `false`)
- __NEW__ `changes {Boolean}` permet de comparer les changements uniquement entre le modèle d'entrée et le formulaire (défaut: `false`)
- __NEW__ `strictchanges {Boolean}` permet de comparer strictement les changements (ou non, les valeurs `null`, `false`, `empty strings` et `0` seront supprimées), défaut: `false`
- __NEW__ `exec {String}` optionnel, un lien vers le `function(data)` qui est exécuté lorsque le modèle est validé et modifié
- __NEW__ `output {String}` optionnel, un lien vers le `function(valid)` ou la voie

__Bon à savoir__ :

- Le composant ajoute la classe `ui-validate-ok` à l'élément si le modèle est valide
- Le composant ajoute la classe `ui-validate-no` à l'élément si le modèle est invalide
- Le composant ajoute la classe `ui-validate-modified` à l'élément si le modèle est modifié

Utilisez-le avec `<ui-component name="validation">`. Lorsque le composant n'est pas encore chargé, jComponent le télécharge lors de la première utilisation depuis l'adresse dans `DEF.fallback` (le CDN Componentator par défaut). Auteur : Peter Širka. Source : le référentiel de composants Componentator, licence 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>
```
