Carregando documentação...

oziCheck

Versão: 1.0.0Atualizado 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')]);