Carregando documentação...

oziLoadData

Versão: 3.10.2Atualizado em: 2026-04-12

Descrição

Motor de transporte e integração da biblioteca ozi-ui. Realiza coleta, envio e tratamento de dados em diferentes modos de execução, com suporte a destino visual, integração com API e controle de comportamento.

O oziLoadData nasceu como plugin, mas está se tornando o encanamento inteligente entre interface, dados e backend — uma verdadeira engine, bridge e transport layer da Ozi Library.


Exemplos

[1] Formulário com validação

Validação automática — botão fica inativo até todos os campos obrigatórios serem preenchidos.

Valid first name is required.
Valid last name is required.
@
Your username is required.
Please enter your shipping address.
Please select a valid country.
Please provide a valid state.
Zip code required.
<button type="button"
    data-zld-url="/api/exemplo/resposta"
    data-zld-destiny-id="resposta1"
    data-zld-catch-group-id="actionForm1"
    class="btn btn-primary">
    Enviar
</button>

[2] Dois formulários simultâneos

Coleta dados de dois grupos diferentes em um único envio.

Formulário Aid="demoFormA"

Formulário Bid="demoFormB"
<button type="button"
    data-zld-url="/api/exemplo/resposta"
    data-zld-destiny-id="resposta2"
    data-zld-catch-group-id="demoFormA, demoFormB"
    class="btn btn-primary">
    Enviar
</button>

[3] Coleta por nome de item

Coleta apenas os campos com nomes específicos — ignora os demais.

<button type="button"
    data-zld-url="/api/exemplo/resposta"
    data-zld-destiny-id="resposta3"
    data-zld-catch-group-id="demoFormC"
    data-zld-catch-item-name="car,moto,aviao:santos dumont"
    class="btn btn-primary">
    Enviar
</button>

aviao:santos dumont — envia o campo com valor fixo definido no atributo.


[4] Via JavaScript — atual

Chamada via oziLoadData({...}) direto no JavaScript.

oziLoadData({
    zldUrl:          '/api/exemplo/resposta',
    zldDestinyId:    'resposta4',
    zldCatchGroupId: ['demoFormJS'],
    zldCatchItemName:['car','moto']
});

[5] Via JavaScript — legado

Compatibilidade com a versão anterior usando prefixo ld em vez de zld.

// Prefixo ld — compatibilidade com versão anterior
oziLoadData({
    ldUrl:          '/api/exemplo/resposta',
    ldDestinyId:    'resposta5',
    ldCatchGroupId: 'demoFormLegacy',
    ldCatchItemName:'inputLegacy:star-trek'
});

[6] Retorno da resposta

Exemplo do PHP de resposta que o backend retorna ao frontend.

Backend PHP — exemplo de resposta:

<?php header('Content-Type: text/html; charset=utf-8'); ?>

<h6 class="fw-bold">Conteúdo recebido</h6>
<div class="m-3">
    <?php
    $data = $_POST ?: $_GET;
    foreach ($data as $key => $value) {
        echo "<div>
            <span class='text-primary'>{$key}:</span>
            <span class='text-muted'>{$value}</span>
        </div>";
    }
    ?>
</div>
<hr>
<div class="text-end text-muted" style="font-size:12px">
    Data/Hora: <?php echo date('Y-m-d H:i:s'); ?>
</div>

Retorno estruturado JSON:

{
    "perm":   1,
    "isJson": false,
    "ok":     true,
    "status": 200,
    "data":   null,
    "html":   "<h6>Conteúdo recebido</h6>...",
    "error":  null
}

Recursos

  • Envio dinâmico — suporta envio nos modos fetch, window e page
  • Coleta flexível — coleta dados por grupo, item individual ou JSON
  • Resposta visual — envia retorno para um destino específico no DOM
  • Dois formulários simultâneoscatch-group-id aceita múltiplos IDs
  • Coleta por nomecatch-item-name seleciona campos específicos
  • Valor fixocampo:valor envia valor definido no atributo
  • Compatibilidade legado — aceita prefixo ld da versão anterior
  • Integração com API — facilita chamadas orientadas a dados
  • Limpeza de formulário — limpa campos após envio quando configurado
  • Suporte a debug — exibe logs detalhados via data-zld-log

Atributos HTML

[1] Envio

Atributo Descrição
data-zld-url Define o endereço de envio
data-zld-mode Modo de envio: fetch, window ou page
data-zld-mode-method Método da requisição: GET ou POST
data-zld-mode-page-target Alvo da página: _self, _blank, _parent, _top

[2] Coleta de Dados

Atributo Descrição
data-zld-catch-group-id Coleta os dados dentro do id informado — aceita múltiplos separados por vírgula
data-zld-catch-item-name Coleta campos pelo name — aceita campo ou campo:valor_fixo
data-zld-file Tratamento de arquivos: audio-webm, imagem, PDF
data-zld-json Envia dados estruturados em Array ou JSON string junto com o FormData
data-zld-checkbox Define ou auxilia o tratamento de valores de checkbox

[3] Resposta / Destino

Atributo Descrição
data-zld-destiny-id Define o destino da resposta no DOM
data-zld-destiny-append Adiciona a resposta no destino informado
data-zld-destiny-Before Insere a resposta antes do destino informado
data-zld-expect-json Ajusta headers para JSON e facilita integração com Laravel
data-zld-api Define a chamada como modo API, voltada para resposta em dados

[4] Comportamento / UX

Atributo Descrição
data-zld-form-busy Evita múltiplos cliques durante a requisição
data-zld-form-clear Limpa formulários após o envio, exceto campos hidden
data-zld-reload-script Recarrega scripts da classe ld-reload em cenários legados

[5] Debug

Atributo Descrição
data-zld-log Ativa logs de depuração no console

[6] Compatibilidade

Adaptado para IIFE → Async/Await, evita conflitos, execução imediata, escopo privado e base preparada para SPA. Aceita prefixo legado ld (ex: ldUrl, ldDestinyId) para compatibilidade com versões anteriores.