Botão excluir tabela paixfilho nao esconde no mobile

Fala galera, tudo beleza ? Seguinte, tenho uma tabela paiXfilho e tenho um script no display fields pra remover os botoes de adicionar e excluir itens, caso não seja a etapa inicial.
displayFields

if (activity != 0) {
        customHTML.append('<script>$(function () { removeButtonsFromTablePaiFilho(); });</script>');
    }

Js

function removeButtonsFromTablePaiFilho() {
  $(".action").remove();
}

No desktop funciona certinho, ja no mobile o botao de adicionar é removido mas o botão de excluir continua aparecendo em todas as etapas.

Alguem ja passou por isso ?

Obrigado!

Coloque uma tag com um id, por exemplo:

<div id="hiddenElement"> <!-- botoes --> </div>

e no displayFields utilize:

if(suaCondicao){  form.setVisibleById("hiddenElement", true) }

Olá Jonathan!!

Tentei desta forma e ainda assim não funcionou.

De qualquer forma agradeço a resposta!

O botão fica na linha do filho?

Sim! vi que o id fica com o index, exemplo: “trashButton___1” e tentei colocar o id diretamente com esse index pra fazer um teste, tambem nao rolou.

Segue um trecho do html pra contextualizar

HTML

<table tablename="shoppingList" id="shoppingList" class="table table-hover" noaddbutton="true" nodeletebutton="true">
. . .
  <tbody>
        <tr id="shopping_list_row">
              <td class="action" id="trash_button">
			    <button type="button" class="btn btn-link btn-sm trashButton" id="trashButton">
		            <i class="fluigicon fluigicon-remove icon-sm text-danger"></i>
		        </button>
		      </td>
         </tr>
  </tbody>
</table>

Tente da seguinte maneira:
$(“[class^=‘action’]”).hide() ou $(“[id^=‘trash_button’]”).hide()

Opa Guilherme!

Mesma coisa, no navegador ok mas no app aparece o bentido botao de remover.

Navegador:

Aplicativo My fluig:

Existe a possibilidade de ser cache do app?

Pode ser sim! Ja cogitei isso, visto que no web o cache é bastante persistente mas eu sempre rodo com ele desabilitado, mas ai pra corrigir acredito que só acionando a totvs ou tem alguma forma de resetar o cache do app ?

Basta abrir o Menu lateral, clicar no ícone de engrenagem → Configurações do Aplicativo → Limpar dados

1 curtida

Boa, obrigado pela dica. Eu estava procurando nas configs do iphone.

Fiz a limpeza e abri um novo processo teste, porem ainda assim continua o botão a aparecer.

Pode ser que no mobile, algo esteja quebrando antes da chamada da sua função. Recomendo você utilizar a biblioteca externa “Eruda” no seu projeto.

Basta você colocar no seu HTML o seguinte trecho:

<script src="//cdn.jsdelivr.net/npm/eruda"></script>
<script>eruda.init();</script>

Depois disso, você vai abrir o CONSOLE pelo APP (através dessa biblioteca) e verifique se tem algum erro ou não, e tente também rodar o código que te passei para esconder o componente. Vai me avisando aí, rs.

1 curtida

Opa! Então agora com esse processo me parece que é algum tipo de cache do app mesmo que não esta limpando mesmo com o procedimento de limpeza.

No navegador apareceu o botão de inspecionar da lib indicada

Mas no app o botão nao aparece

Estranho… tente reinstalar o App do Fluig…

Reinstalei, continua igual.

Vou tentar um chamado com eles pq ta bem estranho. Recentemente tive um problema em um outro processo onde haviam componentes java sendo chamados pelo forms do processo, tudo funcionava normal no navegador e no IOS, mas no android nao carregava o formulario, ai falando com eles lançaram um update com correção.

1 curtida

Galera consegui contornar da seguinte forma. No displayFields adicionei o seguinte

 if (activity != 0) {
        customHTML.append('<script>$(function () { removeButtonsFromTablePaiFilho(); });</script>');
        customHTML.append('<style>@media (max-width: 600px) {.trashButton {display: none !important;}')
    }

A questao do cache nao atualizar foi momentanea, demorou um pouco mas logo atualizou e apareceu o botao de inspecionar da lib indicada pelo Guilherme, o que me ajudou a identificar os elementos e chegar nesta solução uma vez que hide de remove do jquery não estavam funcionando.

Obrigado a todos que colaboraram!

1 curtida