Problems with jquery to read json

Asked

Viewed 37 times

0

-- Edited--

I’m having trouble solving a problem with my code. I use jquery to make a request for a barcode. I can even find the value but I can’t associate my function to mount the table. The error is specifically when mounting tds where I can’t get the value of text(data.product) for example.

 var codigo = $("#codigo_barras");
codigo.on("keydown",function(e){
      if(e.which == 13) {
          e.preventDefault();
          $.get("controle/pedido-troca-pendente-busca-produto.php?codigo="+codigo.val(),geraLinha);
      }
});

function geraLinha(data){
  var produto = jQuery.parseJSON(data);
  console.log(produto);
  var linha  = $("<tr>");
  var colunaProduto = $("<td>").text(data.produto);
  var colunaTamanho = $("<td>").text(data.tamanho);
  var colunaPreco = $("<td>").text(data.preco);
  var colunaUsuario = $("<td>").text(data.usuario);
  linha.append(colunaProduto);
  linha.append(colunaTamanho);
  linha.append(colunaPreco);
  linha.append(colunaUsuario);
  $("#troca-pendente").append(linha);
}

console response:

{id_produto: "1", produto: "Tenis Azul", tamanho: "33", cod_barras: "33", tipo_cobranca: "1", …}

the html

<tbody id="troca-pendente">
</tbody>
  • Bruno, what do you expect from this assignment? var line = $("<tr>");

  • 1

    Create table row. But I solved the problem. I did not use parsed object to display in <td text>.

1 answer

0

I think the problem is here, var produto = jQuery.parseJSON(data); you’re doing the parse and playing for the variable produto, but at the time of using you are using the data

colunaProduto = $("<td>").text(data.produto);

trade solution data.* for produto.*.

colunaProduto = $("<td>").text(produto.produto);

Browser other questions tagged

You are not signed in. Login or sign up in order to post.