Helio13 Posted April 15, 2013 at 11:44 AM Report #503229 Posted April 15, 2013 at 11:44 AM Estou a fazer um get que me devolve este json {"meta": {"limit": 20, "next": null, "offset": 0, "previous": null, "total_count": 3}, "objects": [{"GenreType": "Terror", "id": "515d63a88774a7191cc58276", "resource_uri": "/test/api/v1/Genre/515d63a88774a7191cc58276"}, {"GenreType": "Drama", "id": "515d63ab8774a7191cc58277", "resource_uri": "/test/api/v1/Genre/515d63ab8774a7191cc58277"}, {"GenreType": "Acc\u00e3o", "id": "515d63cb8774a7191cc58278", "resource_uri": "/test/api/v1/Genre/515d63cb8774a7191cc58278"}]} E estou a tentar fazer isto, para obter os dados, mas não estou a conseguir $scope.InsertMovie = function(){ var tmpgenres = $scope.genre.get() var str = JSON.parse(tmpgenres); alert(str.GenreType) } Mas não me dá nada...alguém me pode ajudar? O que estou a fazer mal?
brunoais Posted April 15, 2013 at 11:56 AM Report #503233 Posted April 15, 2013 at 11:56 AM Portanto... O que está dentro do 1º tag code é o conteúdo da variável tempgenres? "[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31 Life is a genetically transmitted disease, induced by sex, with death rate of 100%.
Helio13 Posted April 15, 2013 at 01:00 PM Author Report #503237 Posted April 15, 2013 at 01:00 PM (edited) Sim, exacto... A questão é que num json que tenho numa textarea, se fizer assim: var obj = JSON.parse(document.getElementById('json').value); alert(obj[0].MovieTitle); Ele mostra, o titulo do filmes, mas fazendo o mesmo para o de cima, ao json que retorna não dá... Edited April 15, 2013 at 02:31 PM by brunoais 2x post junto
brunoais Posted April 15, 2013 at 02:33 PM Report #503248 Posted April 15, 2013 at 02:33 PM (edited) Sim, exacto... [...] Não acredito. Faz um alert usando essa variável (tempgenres) como parâmetro e confirma. Eu já vi o erro, mas ele é tão trivial que acho melhor seres tu a perceber aonde erraste. Já agora, se usares um site como o jsbeautifier para esse JSON, ele vai ajudar-te a perceber a asneira que estás a fazer. Edited April 15, 2013 at 02:36 PM by brunoais "[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31 Life is a genetically transmitted disease, induced by sex, with death rate of 100%.
Helio13 Posted April 15, 2013 at 03:25 PM Author Report #503262 Posted April 15, 2013 at 03:25 PM Se eu fizer um alert assim: var tmpgenres = $scope.genre.get(); alert(tmpgenres); Dá me: [object Object] Continuo sem perceber o erro...
brunoais Posted April 17, 2013 at 10:14 AM Report #503549 Posted April 17, 2013 at 10:14 AM usa um for... in e tenta perceber o que é que tens aí. Se não sabes o que é um for... in , então pesquisa na net. há muito disso e sobre quando usar e quando não usar. "[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31 Life is a genetically transmitted disease, induced by sex, with death rate of 100%.
Helio13 Posted April 17, 2013 at 10:23 AM Author Report #503554 Posted April 17, 2013 at 10:23 AM Bom dia... Já consegui resolver o problema, mas o problema não estava no for, mas sim de isto ser assincrono. Pois, eu na função estava a fazer um get e a querer mostrar os dados, e dava undefined, pois os dados ainda não tinham chegados todos da solicitação get. Então tive que por a mostrar os dados apenas depois de terem chegado...assim: var obj = $scope.genre.get(function(data){ var str = JSON.stringify(data); for (var i = 0; i < data.objects.length; i++) alert(data.objects[i].GenreType); }, function(erro){ alert('grande erro');});
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now