Carregando documentação...
oziCheck
Versão: 1.0.0 — Atualizado em: 2026-04-16
Descrição
Plugin para gerenciamento de grupos de checkboxes. Controla ativação do grupo, marcação em massa e sincronização automática do estado entre os itens. Suporta estado indeterminate quando apenas parte dos itens está marcada, e funciona tanto em carregamento normal quanto em conteúdo inserido dinamicamente via fetch ou ZLD.
Exemplos
[1] Grupo simples — ativar, marcar todos e itens
<input type="checkbox" data-ozi-check-enabled="grupo1"> Ativar grupo
<input type="checkbox" data-ozi-check-all="grupo1"> Selecionar todos
<input type="checkbox" name="marcas[]" value="ford" data-ozi-check-item="grupo1"> Ford
<input type="checkbox" name="marcas[]" value="honda" data-ozi-check-item="grupo1"> Honda
<input type="checkbox" name="marcas[]" value="toyota" data-ozi-check-item="grupo1"> Toyota
[2] Múltiplos grupos — regiões do Brasil
Grupos independentes com ativar/desativar por região. Norte e Sudeste ativos por padrão.
Região Norte
Região Nordeste
Região Sudeste
<!-- Região Norte — ativa por padrão -->
<input type="checkbox" data-ozi-check-enabled="norte" checked> Ativo/Inativo
<input type="checkbox" data-ozi-check-all="norte"> Selecionar todos
<input type="checkbox" data-ozi-check-item="norte"> Acre
<input type="checkbox" data-ozi-check-item="norte"> Amapá
<input type="checkbox" data-ozi-check-item="norte"> Amazonas
<!-- Região Nordeste — inativa por padrão -->
<input type="checkbox" data-ozi-check-enabled="nordeste"> Ativo/Inativo
<input type="checkbox" data-ozi-check-all="nordeste"> Selecionar todos
<input type="checkbox" data-ozi-check-item="nordeste"> Alagoas
<input type="checkbox" data-ozi-check-item="nordeste"> Bahia
Recursos
- Controle de grupo — ativa ou desativa todos os checkboxes via um único checkbox
- Marcar todos — marca ou desmarca todos os itens de uma vez
- Sincronização automática — o checkbox "todos" reflete sempre o estado real dos itens
- Estado
indeterminate— ativado automaticamente quando apenas parte dos itens está marcada - Inicialização automática — inicia no carregamento da página sem configuração manual
- Suporte a conteúdo dinâmico — compatível com fetch e ZLD via
oziCheckInitFetched - Múltiplos grupos — grupos completamente independentes na mesma página
Atributos HTML
[1] Estrutura do Grupo
| Atributo | Descrição |
|---|---|
data-ozi-check-enabled="grupo" |
Checkbox que ativa ou desativa o grupo inteiro |
data-ozi-check-all="grupo" |
Checkbox que marca ou desmarca todos os itens |
data-ozi-check-item="grupo" |
Checkboxes individuais do grupo |
Comportamento
Grupo ativo ou inativo
Estado do enabled |
Efeito |
|---|---|
| Desligado | all e todos os item ficam desabilitados e desmarcados |
| Ligado | all e todos os item ficam habilitados |
Sincronização do "marcar todos"
| Estado dos itens | Estado do data-ozi-check-all |
|---|---|
| Todos marcados | Marcado |
| Nenhum marcado | Desmarcado |
| Parte marcada | indeterminate = true |
API Pública
| Método | Descrição |
|---|---|
OziCheck.init(scope) |
Inicializa os grupos no escopo informado |
OziCheck.refresh(scope) |
Reinicializa os grupos no escopo |
OziCheck.setGroupEnabledState(group, enabled, scope) |
Habilita ou desabilita um grupo |
OziCheck.setAllItems(group, checked, scope) |
Marca ou desmarca todos os itens |
OziCheck.syncGroup(group, scope) |
Sincroniza manualmente o estado do grupo |
Exemplos de uso
// Habilitar/desabilitar grupo
OziCheck.setGroupEnabledState('norte', true, document);
OziCheck.setGroupEnabledState('norte', false, document);
// Marcar/desmarcar todos
OziCheck.setAllItems('norte', true, document);
OziCheck.setAllItems('norte', false, document);
// Sincronizar manualmente
OziCheck.syncGroup('norte', document);
// Recarregar área específica
OziCheck.refresh($('#destino')[0]);
Uso com conteúdo dinâmico
// Após inserir HTML no DOM
$('#destino').html(html);
window.oziCheckInitFetched($('#destino'));
// Ou via evento
$(document).trigger('oziCheck:initFetched', [$('#destino')]);