gabi_poa Postado Agosto 11, 2010 Denunciar Share Postado Agosto 11, 2010 (editado) Gente, desculpa a pergunta que deve ser super idiota.Estou fazendo um site para iphone que deve receber dados do grails, mas não há formas de eu conseguir chegar nos dados.Não sei o que estou fazendo errado? Achei que seria a mesma coisa que ajax com php, mas parece que não...Tenho uma URL http://XXXX:8080/projeto/controller/show/1?format=json que ele retorna um json. Isso está okMas se eu coloco isso no js, ele chega vazio.Sabem o que estou fazendo errado? <script type="text/javascript" src="../javascript/jquery-1.4.2.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ getItens( null ); function getItens(data){ $.post('http://XXXX:8080/projeto/controller/show/1?format=json', data, createTable); } function createTable(data){ //var dados=eval(data) também não funciona var dados=eval('(' + data.responseText + ')') alert(dados) //Chega undefined } }); </script>Agradeço qualquer dica. Não entendo nada de java, nunca trabalhei com grails. Quando busco no google tudo o que chega é grego pra mm :0( Editado Agosto 11, 2010 por fercosmig add tag's Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Romerito Postado Agosto 11, 2010 Denunciar Share Postado Agosto 11, 2010 (editado) i aew gabi_poa, bom com jquery você não precisa usar eval para transformar o retorno em json, pode especificar no metodo post o tipo de retorno, ficando mais ou menos assim:function getItens(data){ $.post('http://XXXX:8080/projeto/controller/show/1?format=json', data, createTable, 'json'); } o quarto parametro da funcao post é o tipo de retorno. e na sua function createTable deixa assim: function createTable(data){ alert(data); /*iso deverá imprimir [object Object]*/ }espero que ajude, abraço! Editado Agosto 11, 2010 por Romerito Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 gabi_poa Postado Agosto 11, 2010 Autor Denunciar Share Postado Agosto 11, 2010 Obrigada pela resposta, Romerito, mas continua retornando nulo.E o pior é que o grails está mesmo retornando o json, porque quando acesso a url eu vejo os dados no browser.Sério, não tenho a menor idéia...[]´s Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Romerito Postado Agosto 11, 2010 Denunciar Share Postado Agosto 11, 2010 bom faz o seguinte, existe um plugin pra debug ajax bem legal criado por Jaydson Gomes, você pode fazer o download aqui, ai testa assim:function getItens(d){ $.ajax({ data: d, type:'POST', url: 'http://XXXX:8080/projeto/controller/show/1?format=json', dataType:'json', success: function(data){ createTable(data); }, error: function(XMLHttpRequest, textStatus, errorThrown){ $(XMLHttpRequest).AjaxDebug({ containerId : "load", nativeConsole : true }); } }); } não esqueça de adicionar o js: <script type='text/javascript' src='ajax.debug.js'></script> e crie uma div com id=load: <div id='load'></div>bom, ai tu pode ver o erro e se não conseguir identificar, posta ai pra ver se a galera ajuda! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 gabi_poa Postado Agosto 11, 2010 Autor Denunciar Share Postado Agosto 11, 2010 Nada mesmo.Não aparece erro.Eu sei que ele vai até o servidor porque a função de sucesso executa (coloquei um alert ali dentro). Agora se eu coloco um breakpoint com o firebug ele não chega na função de sucesso.Eu sei que isso funciona com php. Achei que com grails seria a mesma coisa :( Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Eric Freitas Postado Agosto 16, 2010 Denunciar Share Postado Agosto 16, 2010 gabi jquery não pega informações de outros sites, você terá que fazer a conex na mão. sem o uso do jquery. se você prestar atenção verá q no final das funções de ajax diz que não pode acessar páginas fora do domínio onde está o site por umas parada de provacidade. por isso ta retornando nulo Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
gabi_poa
Gente, desculpa a pergunta que deve ser super idiota.
Estou fazendo um site para iphone que deve receber dados do grails, mas não há formas de eu conseguir chegar nos dados.
Não sei o que estou fazendo errado? Achei que seria a mesma coisa que ajax com php, mas parece que não...
Tenho uma URL http://XXXX:8080/projeto/controller/show/1?format=json que ele retorna um json. Isso está ok
Mas se eu coloco isso no js, ele chega vazio.
Sabem o que estou fazendo errado?
Agradeço qualquer dica. Não entendo nada de java, nunca trabalhei com grails. Quando busco no google tudo o que chega é grego pra mm :0(
Editado por fercosmigadd tag's
Link para o comentário
Compartilhar em outros sites
5 respostass a esta questão
Posts Recomendados
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.