Jump to content

Recuperar dados da tabela mesmo estando oculta


John Hebert Trindade
Go to solution Solved by Rui Carlos,

Recommended Posts

Boa tarde a todos, ca estou eu mais uma a solicitar a vossa ajuda.

Tenho um formulário com uma tabela, nesta tabela tenho uma coluna que esta oculta com o style="display:none;" por o style="visibility:hidden;" fica o espaço em branco e não quero.

até aqui esta tudo bem, mas gostaria enviar para a model os valores desta tabela, mas como a coluna esta como style="display:none;" não envia.

Como faço para poder ocultar a coluna, mas mesmo assim conseguir enviar os dados ocultos?

essa não é a tabela toda, apenas parte dela

<tr>
  <td class="table">
    <input type="text" name="codigo_barras[]" id="codigo_barras" class="input" placeholder="Código Barras" autocomplete="on" required>
    560001
  </td>
  <td style="display:none;" name="id[]">
    1
  </td>
  <td class="list-content">
  	bisturi
  </td>
  <td class="list-content">
    <input type="number" name="qtde[]" id="qtde" class="input" placeholder="Qtde" autocomplete="off" required >
  </td>
  <td>
    <input type="button" class="btn-danger" name="remove" id="remove" value="remove">
  </td>
</tr>

 

Link to comment
Share on other sites

  • Solution

É o conteúdo da célula id[] que pretendias enviar?  Não te falta aí um input ou similar (para além do form, que assumo que estejas simplesmente a omitir)?  Tanto quanto sei, precisas de um elemento form control para os dados serem enviados no formulário.

 

Vê também isto: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/hidden

Link to comment
Share on other sites

Podes experimentar usar o style="visibility:hidden;" com margem negativa da altura do input. Para que o elemento escondido suba para cima e dessa maneira não deixar o espaço em branco.

Exemplo: 

<input style="visibility:hidden; margin-top: -25px" />
<!-- Não sei se 25px é a altura correta, terás de exprimentar e ajustar ao teu caso -->


Podes também experimentar colocar o input numa posição fora do formulário, usando o visibility: hidden;

Exemplo:

<input style="visibility:hidden; position: fixed; top: 0; left: 0" />



Ambas estas soluções que eu tentaria, não tenho a certeza se funcionará no teu caso.

Em ultimo caso podes fazer um método javascript a parte para fazer o pedido HTTP sem usar o submit do formulário. Assim tens controlo total de quais dados enviar no teu pedido

Edit: Reparei agora que se trata de uma coluna da tabela, e não um input. Nesse caso acho que a melhor solução será fazer o pedido a partir do javascript

Edited by user
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.