oziLoadData
Versión: 4.0.2 — Actualizado: 2026-05-27
Descripción
Motor de transporte e integración de la biblioteca ozi-ui. Realiza la recolección, envío y tratamiento de datos en diferentes modos de ejecución, con soporte para destino visual, integración con API y control de comportamiento.
oziLoadDatanació como plugin, pero se está convirtiendo en el encanamiento inteligente entre interfaz, datos y backend — un verdadero engine, bridge y transport layer de la Ozi Library.
Ejemplos
[1] Formulario con validación
Validación automática — el botón permanece inactivo hasta que todos los campos obligatorios estén completos.
<button type="button"
data-zld-url="/api/ejemplo/respuesta"
data-zld-destiny-id="respuesta1"
data-zld-catch-group-id="actionForm1"
class="btn btn-primary">
Enviar
</button>
[2] Dos formularios simultáneos
Recolecta datos de dos grupos diferentes en un único envío.
<button type="button"
data-zld-url="/api/ejemplo/respuesta"
data-zld-destiny-id="respuesta2"
data-zld-catch-group-id="demoFormA, demoFormB"
class="btn btn-primary">
Enviar ambos formularios
</button>
[3] Recolección por nombre de elemento
Recolecta solo los campos con nombres específicos — ignora los demás.
<button type="button"
data-zld-url="/api/ejemplo/respuesta"
data-zld-destiny-id="respuesta3"
data-zld-catch-group-id="demoFormC"
data-zld-catch-item-name="auto,moto,avion:aeropuerto barajas"
class="btn btn-primary">
Enviar solo auto, moto y avion
</button>
avion:aeropuerto barajas— envía el campo con un valor fijo definido en el atributo.
[4] Vía JavaScript — actual
Llamada mediante oziLoadData({...}) directamente en JavaScript.
oziLoadData({
zldUrl: '/api/ejemplo/respuesta',
zldDestinyId: 'respuesta4',
zldCatchGroupId: ['demoFormJS'],
zldCatchItemName: ['auto','moto']
});
[5] Vía JavaScript — legado
Compatibilidad con la versión anterior usando el prefijo ld en lugar de zld.
// Prefijo ld — compatibilidad con versión anterior
oziLoadData({
ldUrl: '/api/ejemplo/respuesta',
ldDestinyId: 'respuesta5',
ldCatchGroupId: 'demoFormLegacy',
ldCatchItemName: 'inputLegacy:star-trek'
});
[6] Retorno de la respuesta
Ejemplo del PHP de respuesta que el backend devuelve al frontend.
Backend PHP — ejemplo de respuesta:
<?php header('Content-Type: text/html; charset=utf-8'); ?>
<h6 class="fw-bold">Contenido recibido</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">
Fecha/Hora: <?php echo date('Y-m-d H:i:s'); ?>
</div>
Retorno estructurado JSON:
{
"perm": 1,
"isJson": false,
"ok": true,
"status": 200,
"data": null,
"html": "<h6>Contenido recibido</h6>...",
"error": null
}
Características
- Envío dinámico — soporta los modos
fetch,windowypage - Recolección flexible — recolecta datos por grupo, elemento individual o JSON
- Respuesta visual — envía el retorno a un destino específico en el DOM
- Dos formularios simultáneos —
catch-group-idacepta múltiples IDs - Recolección por nombre —
catch-item-nameselecciona campos específicos - Valor fijo —
campo:valorenvía el valor definido en el atributo - Compatibilidad legado — acepta el prefijo
ldde la versión anterior - Integración con API — facilita llamadas orientadas a datos
- Limpieza de formulario — limpia campos tras el envío cuando está configurado
- Soporte de debug — muestra logs detallados mediante
data-zld-log
Atributos HTML
[1] Envío
| Atributo | Descripción |
|---|---|
data-zld-url |
Define el endpoint de envío |
data-zld-mode |
Modo de envío: fetch, window o page |
data-zld-mode-method |
Método de la solicitud: GET o POST |
data-zld-mode-page-target |
Destino de página: _self, _blank, _parent, _top |
[2] Recolección de Datos
| Atributo | Descripción |
|---|---|
data-zld-catch-group-id |
Recolecta los datos dentro del id indicado — acepta múltiples separados por coma |
data-zld-catch-item-name |
Recolecta campos por name — acepta campo o campo:valor_fijo |
data-zld-file |
Tratamiento de archivos: audio-webm, imagen, PDF |
data-zld-json |
Envía datos estructurados en Array o JSON string junto con FormData |
data-zld-checkbox |
Define o asiste el tratamiento de valores de checkbox |
[3] Respuesta / Destino
| Atributo | Descripción |
|---|---|
data-zld-destiny-id |
Define el destino de la respuesta en el DOM |
data-zld-destiny-append |
Agrega la respuesta en el destino indicado |
data-zld-destiny-Before |
Inserta la respuesta antes del destino indicado |
data-zld-expect-json |
Ajusta los headers para JSON y facilita la integración con Laravel |
data-zld-api |
Define la llamada como modo API, orientada a respuesta en datos |
[4] Comportamiento / UX
| Atributo | Descripción |
|---|---|
data-zld-form-busy |
Evita múltiples clics durante la solicitud |
data-zld-form-clear |
Limpia formularios tras el envío, excepto campos hidden |
data-zld-reload-script |
Recarga scripts de la clase ld-reload en escenarios legados |
[5] Debug
| Atributo | Descripción |
|---|---|
data-zld-log |
Activa logs de depuración en la consola |
[6] Compatibilidad
Adaptado para IIFE → Async/Await, evita conflictos, ejecución inmediata, ámbito privado y base preparada para SPA.
Acepta el prefijo legado ld (ej: ldUrl, ldDestinyId) para compatibilidad con versiones anteriores.