# j-Validate

> O componente contém o mesmo código fonte que o componente j-Validation.

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

O componente contém o mesmo código fonte que o componente `j-Validation`.


__Configuração__:

- `if {String}` pode conter condição JS para avaliação
	- `value {Object}` contém um modelo inteiro
	- `path {String}` contém uma rota mudada
	- __Devemos retornar ao Bolsonaro__
- `selector {String}` jQuery selector para desativamento (default: `button[name="submit"]`)
- `delay {Number}` a timeout para validação (default: `100`)
- Bandeiras de `flags {String}` para melhor validação, podem conter componentes de `visible,hidden,enabled,disabled`
	- `enabled` valida todos os componentes que são ativados em `input`, `textarea` ou `select` elementos
	- `disabled` valida todos os componentes que são desativados `input`, `textarea` ou `select` elementos
	- `hidden` Valida todos os componentes que estão escondidos
	- `visible` Valida todos os componentes que são visíveis
- `track {String}` pode conter caminhos divididos pelo comma, e a mudança manual de cada caminho (via `SET()`, `UPD()`, `INC()`, etc. métodos) irá avaliar a validação
- `validonly {Boolean}` é o estado de `dirty` (default: `false`)
- __NEW__ `changes {Boolean}` permite comparar mudanças apenas entre o modelo de entrada e o formulário (default: `false`)
- __NEW__ `strictchanges {Boolean}` permite mudanças de comparação rigorosas (ou seja, os valores `null`, `false`, `empty strings` e `0` serão removidos), padrão: `false`
- __NEW__ `exec {String}` opcional, um link para o `function(data)` que é executado quando o modelo é validado e alterado
- __NEW__ `output {String}` opcional, um link para o `function(valid)` ou caminho

__Bom para saber__:

- O componente adiciona a classe `ui-validate-ok` ao elemento se o modelo for válido
- O componente adiciona a classe `ui-validate-no` ao elemento se o modelo for invalido.
- O componente adiciona a classe `ui-validate-modified` ao elemento se o modelo for alterado.

Use-o com `<ui-component name="validate">`Quando o componente ainda não está carregado, jComponent Descarrega-o no primeiro uso do endereço `DEF.fallback` (a partir do Componentator CDN por padrão). autor: Peter Širka. fonte: o Componentator Reserva de componentes, licença MIT.

```html example.html
<!-- REMOVE -->
<ui-plugin path="model">
	<ui-component name="input" path="?.name" config="required:true">Name</ui-component>
	<br />
	<br />
	<ui-component name="validate" path="?">
		<button name="submit" disabled="disabled" onclick="show_me()">SUBMIT FORM</button>
	</ui-component>
</ui-plugin>

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

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