Ir para conteúdo
Fórum Script Brasil
  • 0

each em em objeto com titulo e itens


jrlsantana

Pergunta

Preciso fazer dois each para pegar os filhos do primeiro, tem dois objetos, mas ele só pega os itens do ultimo,

alguém pode me ajudar?

 $('view').empty();
                $(data).each(function (i, item) {
                    
                    $('#table').append(
                        '<td> Mesa :  ' + item.table + '</td>'
                    );
                    
                    $(item.itens).each(function (x, item2) {
                        $('#item').append(

                                '<div style="border-style:solid; border-block-color:gray; border-width:thin">' +
                                '<ul id="itens">' +
                                '<li>' + item2.amount + ': ' + item2.name + '</li>' +
                                '</ul>' +
                                '</div>'
                            );
                    });
                });  

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

[
    {
        "orderId": 40,
        "table": 10,
        "status": false,
        "itens": [
            {
                "id": 16,
                "product_id": 5,
                "order_id": 40,
                "name": "Cerveja Skol Lata 300 ml",
                "amount": 1
            },
            {
                "id": 17,
                "product_id": 8,
                "order_id": 40,
                "name": "Agua",
                "amount": 2
            }
        ]
    },
    {
        "orderId": 41,
        "table": 20,
        "status": false,
        "itens": [
            {
                "id": 18,
                "product_id": 1,
                "order_id": 41,
                "name": "Pastel",
                "amount": 1
            },
            {
                "id": 19,
                "product_id": 3,
                "order_id": 41,
                "name": "X-Salada",
                "amount": 1
            },
            {
                "id": 20,
                "product_id": 4,
                "order_id": 41,
                "name": "Batata frita",
                "amount": 2
            }
        ]
    }
]

Link para o comentário
Compartilhar em outros sites

  • 0

Olá!
Considerando que #table seja uma tr (porque todos devem ficar dentro de trs)
Segue sugestão:
 

for (const item of data) {

  $('#table').append('<td> Mesa :  ' + item.table + '</td>')

  for (const item2 of item.itens) {
    $('#item').append(`
      <div style="border-style:solid; border-block-color:gray; border-width:thin">
        <ul id="itens">
          <li>${item2.amount} : ${item2.name}</li>
        </ul>
      </div>`,
    )
  }
}

 

Link para o comentário
Compartilhar em outros sites

  • 0

Certo... então o sr. precisa que os itens fiquem dentro da mesma célula?
Lembre-se de que não conhecemos a sua estrutura html

for (const item of data) {
  let itemsForThisTable = ''
  for (const item2 of item.itens) {
    itemsForThisTable += ` <div style="border-style:solid; border-block-color:gray; border-width:thin">
        <ul id="itens">
          <li>${item2.amount} : ${item2.name}</li>
        </ul>
      </div>`
  }

  $('#table').append('<td> Mesa :  ' + item.table + itemsForThisTable + '</td>')
}

chutando que seria dentro da mesma célula:

Screenshot_1.jpg

Editado por wash
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...