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

[RESOLVIDO] Jquery $.ajax - callback json


rafaeldorazio

Pergunta

O erro é no each, porque quando eu retiro o $.each não da erro porem não funciona direito !

$.ajax({
            type: "POST",    
            url: "../select.php",  
            data: {}, 
            contentType: "application/json; charset=utf-8",              
            success: function(data){              

                $.each(data.resultado, function(i,item){

                    alert(item);
        
                })
        
            }
            
        });

O retorno json é:

({"total":"3","resultado":[{"fun_codigo":"1","fun_nome":"1","fun_email":"6","fun_cpf":"2"},{"fun_codigo":"2","fun_nome":"Rafael","fun_email":"teste@teste.com","fun_cpf":"30267216890"},{"fun_codigo":"3","fun_nome":"Rafael","fun_email":"teste@teste.com","fun_cpf":"30267216890"}]})

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

10 respostass a esta questão

Posts Recomendados

  • 0

i aew rafaeldorazio, bom da maneira que você está fazendo o item é um objeto JSON, para imprimir o resultado você precisa especificar o cara, exemplo:

var data = { total:"3" , resultado:[
                                    { fun_codigo:"1" , fun_nome:"1", fun_email:"6",fun_cpf:"2"},
                                    { fun_codigo:"2" , fun_nome:"Rafael", fun_email:"teste@teste.com",fun_cpf:"30267216890"},
                                    { fun_codigo:"3" , fun_nome:"Rafael", fun_email:"teste@teste.com",fun_cpf:"30267216890"}
                                ]};
                                
            $.each(data.resultado, function(i,item){
                alert( "fun_codigo = " + item.fun_codigo + "\nfun_nome = " + item.fun_nome + "\nfun_email = " + item.fun_email + "\nfun_cpf = " + item.fun_cpf );
            })

espero que ajude abraço!

Link para o comentário
Compartilhar em outros sites

  • 0

O código que tem a variavel data fixa no javascript como você colocou no post, funcionou perfeitamente porem quando uso o codigo abaixo não funciona !

$.ajax({
            type: "POST",    
            url: "../select.php",  
            data: {}, 
            contentType: "application/json; charset=utf-8",              
            success: function(data){              

                $.each(data.resultado, function(i,item){

                    alert(item.fun_nome);
        
                })
        
            }
            
        });
E da um erro:
a is undefined
[Break on this error] a))();else c.error("Invalid JSON: "+a)...(d)if(i)for(f in a){if(b.apply(a[f],
E o json é o mesmo do primeiro post:
({"total":"3","resultado":[{"fun_codigo":"1","fun_nome":"1","fun_email":"6","fun_cpf":"2"},{"fun_codigo":"2","fun_nome":"Rafael","fun_email":"teste@teste.com","fun_cpf":"30267216890"},{"fun_codigo":"3","fun_nome":"Rafael","fun_email":"teste@teste.com","fun_cpf":"30267216890"}]})

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

  • 0

i aew carinha, bom agora que percebe, tu não ta passando o parametro de tipo de retorno que deseja, se você não passa o parametro o default vai retornar string.

bom tenta deixar assim:

$.ajax({
                type: "POST",    
                url: "json.html",  
                data: {},
                contentType: "application/json; charset=utf-8",
                dataType : 'json' ,/*adiciona o tipo de retorno*/
                success: function(data){              
                    $.each(data.resultado, function(i,item){

                        alert(item.fun_nome);
            
                    });
            
                }
                
            });

espero que ajude abraço!

Link para o comentário
Compartilhar em outros sites

  • 0

Romerito, este codigo abaixo, ele não entra na function do success, porque o aler não chega a ser executado !

$(document).ready( function() {

        $.ajax({
            type: "POST",    
            url: "select.php",  
            data: {},
            contentType: "application/json; charset=utf-8",
            dataType : 'json' ,/*adiciona o tipo de retorno*/
            success: function(data){          
                                alert("Teste");
                $.each(data.resultado, function(i,item){

                    alert(item.fun_nome);
        
                });
        
            }
            
        });

    });
o Json retornado é :
{total:"3",resultado:[{"fun_codigo":"1","fun_nome":"1","fun_email":"6","fun_cpf":"2"},{"fun_codigo":"2","fun_nome":"Rafael","fun_email":"teste@teste.com","fun_cpf":"30267216890"},{"fun_codigo":"3","fun_nome":"Rafael","fun_email":"teste@teste.com","fun_cpf":"30267216890"}]}
Se eu usar o retorno vindo do .php não funciona mas se eu colocar um
{total:"3",resultado:[{"fun_codigo":"1","fun_nome":"1","fun_email":"6","fun_cpf":"2"},{"fun_codigo":"2","fun_nome":"Rafael","fun_email":"teste@teste.com","fun_cpf":"30267216890"},{"fun_codigo":"3","fun_nome":"Rafael","fun_email":"teste@teste.com","fun_cpf":"30267216890"}]}}

no codigo funciona, não sei mais o que fazer !

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

  • 0

i aew rafaeldorazio, sua string JSON do php está errada, ela precisa vir o total e o resultado entre aspas dupla, então deixe dessa maneira:

{"total":"3","resultado":[{"fun_codigo":"1","fun_nome":"1","fun_email":"6","fun_cpf":"2"},{"fun_codigo":"2","fun_nome":"Rafael","fun_email":"teste@teste.com","fun_cpf":"30267216890"},{"fun_codigo":"3","fun_nome":"Rafael","fun_email":"teste@teste.com","fun_cpf":"30267216890"}]}}

falow, abraço!

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,4k
×
×
  • Criar Novo...