# Uso incorreto do atributo "for" das Labels

**URL:** <https://community.latromi.com.br/t/uso-incorreto-do-atributo-for-das-labels/1863>\
**Category:** Changelog\
**Tags:** erro, form, 2026-q3\
**Created:** [Julho 15, 2026, 5:05pm UTC](https://community.latromi.com.br/t/uso-incorreto-do-atributo-for-das-labels/1863 "2026-07-15T17:05:09Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![daniel.giacomelli](https://community.latromi.com.br/user_avatar/community.latromi.com.br/daniel.giacomelli/32/1476_2.png) [@daniel.giacomelli](https://community.latromi.com.br/u/daniel.giacomelli)\
**Post date:** [Julho 15, 2026, 5:05pm UTC](https://community.latromi.com.br/t/uso-incorreto-do-atributo-for-das-labels/1863/1 "2026-07-15T17:05:09Z")

</div>

## Problema

A partir da [versão 3.5.526](https://community.latromi.com.br/t/latromi-web-versao-3-5-526/1852) do Latromi Web, o atributo `for` dos elementos do tipo `label` do Formulário, deixaram de apontar para o elemento `input` e passaram a apontar para elemento `div.fieldWrapper`

 ![image](https://community.latromi.com.br/uploads/default/original/2X/9/9871a438bc019be65a20efad520941be05536616.png)

Essa mudança acidental, além de gerar problemas de retro compatibilidade em rotinas personalizadas, está semanticamente errada.

Veja a definição do atributo `for` [neste link](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Attributes/for).

## Solução

A Plataforma deve ser alterada para que o atributo `for` das `label`’s aponte para o elemento `input` ou outro elemento de formulário associado ao campo do Latromi (ex: `select`, `number`, `date`, `upload`, `check`). Quando não houve um elemento de formulário associado, o atributo `for` não deve ser especificado.

**Paliativamente** , nos casos onde esse comportamento estiver quebrando um código personalizado existente, adicione o código abaixo no **JavaScript Público** da Plataforma:

```js
// Este script tem o objetivo apontar a referência das labels dos
// forms para os campos "input", preservando a retrocompatibilidade
latromi.formManager.setOnFormCreatedCallback(function (ev) { 
    Object.keys(ev.form.fields).forEach(fieldName => {
        const fieldData = ev.form.getFieldData(fieldName);
        
        // Obtém o elemento "wrapper" de cada campo
        const wrapper = document.getElementById(fieldData.wrapperClientId);
        if (!wrapper) return;
        // Procura uma label, dentro do "wrapper", que esteja referenciando o próprio "wrapper"
        const label = wrapper.querySelector('label[for="'+wrapper.id+'"]');
        if (!label) return;
        // Ajusta a referência da label, apontando para o input correspondente
        label.htmlFor = fieldData.clientId;
        //
        console.log('Atributo "for" da Label do campo "' + fieldData.labelText + '" ajustado');
    });
});

```

---

<div class="post-metadata">

**Author:** ![system](https://community.latromi.com.br/user_avatar/community.latromi.com.br/system/32/1700_2.png) [@system](https://community.latromi.com.br/u/system)\
**Post date:** [Julho 22, 2026, 5:05pm UTC](https://community.latromi.com.br/t/uso-incorreto-do-atributo-for-das-labels/1863/2 "2026-07-22T17:05:46Z")

</div>

Este tópico foi fechado automaticamente 7 dias depois da última resposta. Novas respostas não são mais permitidas.
