Erro no displayFields

Bom dia, preciso de ajuda. eu estou trabalhando com uma guia de formulários, e eu quero que apenas na tarefa 4 do meu fluxo apareça dois campos, um selector e um campo textarea, mas como estou trabalhando com dois formulários em um, estou tendo problemas, a intenção é que sempre que chegar um numero dentro do campo cpf ou cnpj execute alguma coisa, nesse caso mostrar os campos. Eu criei o displayFields pra fazer isso, criei um if e coloquei nesse if o numero da atividade == ao numero da atividade que eu quero, nesse caso atividade == 4, até ae beleza, mas na hora que fui criar as condições dentro desse if nao obtive sucesso, a regra que defini foi a seguinte, quando o cpf estiver == "" (vazio), entao mostre os campos no formulário 2, isso indica que o usuário escolheu o cadastro de pessoa jurídica, e quando o cnpj estiver == "" (vazio), isso vai indicar que o usuário escolheu o cadastro de pessoa física, então mostre os campos no formulário 1, a regra que pensei foi assim, dentro de cada if coloquei o form.setVisibleId("passei o id do campos", true), esse método iria mostrar os campos que eu queria que deixassem de ser oculto, mas quando exporto da o seguinte erro: Erro ao executar o evento displayFields não foi implementado para o fichário 57 na versão 555000. Deixei o codigo que fiz anexado.

:warning: Atenção: Esta publicação foi transferida automaticamente do fórum antigo, mas os anexos não foram incluídos.

Todos os eventos que ficam dentro da pasta seuformulario/events acontecem do lado do servidor (não no navegador) e o servidor na verdade roda Java. Ele vai pegar seu código JS e transformar em Java. Devido a isso a gente perde um monte de vantagens do JS.

O problema no seu código foi ter usado JQuery para pegar o valor do campo, pois a JQuery não existe nesse contexto.

Você precisa usar a variável form para ter acesso aos valores dos campos.

Ao invés de usar JQuery:


var cpf = $("#cpf").val();

Faça:


var cpf = form.getValue("cpf");

Lembrando que a form.getValue pega o valor procurando pelo atributo name, não pelo id.

Importante que também não existe o console.log e demais funções de debug de navegador. Nesse caso você deve usar as funções log.info, log.warn, log.error e log.fatal. Elas vão escrever no log do Fluig dentro do servidor.

Valeu amigo, agora deu certo, coloquei da forma que você falou e removi o .value que estava dentro do if e agora esta funcionando beleza