Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

140
Visualizações
La matriz permanece vacía AJAX/JS/PHP

Mi script php devuelve una respuesta en json:

 echo json_encode(array( "Subject"=>$row['Subject'], "date"=>$row['Date'], "Sender"=>$row['username'], "sender_id"=>$row['user_id'], "Message"=>$row['Message']) );

En JS, las columnas individuales deben insertarse en las diferentes matrices para usarlas más tarde en una tabla, pero permanecen vacías

Creo que el problema tiene que ver con async pero no sé cómo hacerlo.

Este es el código JS.

 var id =45678; var names = []; var subjects = []; var dates = []; var messages = []; var sender_ids = []; function getData() { return $.ajax({ type: "post", url: '', data: {user: id}, dataType: 'json', success: function(response){ $.each(response, function(i, row) { names.push(response.Sender); subjects.push(response.Subject); dates.push(response.date); sender_ids.push(response.sender_id); }) } }); } $(document).ready( function() { getData().done(function (response) { if(response.Sender != null) { for (var i in response.Sender){ names.push(response.Sender[i]); alert(names); } } alert(names); }); });
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

El problema es que devuelve la variable ajax que es incorrecta, la declaración de devolución debe estar dentro de la función de éxito y una en la función completa para que tenga una alternativa. Desafortunadamente, la parte .done no tiene un parámetro (respuesta). O vas a hacer todo tu trabajo en función de éxito o devolverás todo desde allí.

 var id =45678; function getData(obj) { return ({ type: "post", url: '', data: {user: id}, dataType: 'json', success: function(response){ obj.names.push(response.Sender); obj.subjects.push(response.Subject); obj.dates.push(response.date); obj.messages.push(response.Message); obj.sender_ids.push(response.sender_id); return obj; }, complete: function(){ return obj; } }); } $(document).ready( function() { var obj = {} obj.names = []; obj.subjects = []; obj.dates = []; obj.messages = []; obj.sender_ids = []; obj = getData(obj); });

Prueba esto. Deseo que esto pueda ayudarte.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda