Como passar o valor de uma action para um javascript?
21/01/2014 19:45
0
Oi pessoal, boa noite!

Estou com um problema, e muito provavelmente esteja implementando errado, rs.
Eu tenho uma action simples chamada listaAlunos que me retorna a quantidade de alunos que tenho cadastrado. Bem simples!


def listaAlunos() {
def alunos = Aluno.list()

[listaAluno:alunos]
}


Meu problema está quando tanto pegar o retorno dessa action em um javascript. O retorno vem assim:

[br.grails.escola.Aluno: Claudio, br.grails.escola.Aluno: Damiana, br.grails.escola.Aluno: Renata]


E no javascript estou tentando pegar o primeiro item da lista

var nextCount=0
$('.next').click(function() {
nextCount ++
console.log(${listaAluno[nextCount].nome});
});


Do modo como está descrito acima retorna o seguinte erro:
Ambiguous method overloading for method java.util.ArrayList#getAt. Cannot resolve which method to invoke for [null] due to overlapping prototypes between: [interface groovy.lang.Range] [interface java.util.Collection]



Se eu substituir a linha
console.log(${listaAluno[nextCount].nome});
por
console.log(${listaAluno[0].nome});
ele funciona, exibe no console o nome do primeiro aluno.
Eu estou usando javascript porque estou fazendo uma navegação (anterior e próximo) para exibir as informações pertinentes a cada aluno.

Alguém sabe me dizer como trabalhar o retorno de uma lista usando javascript, de uma forma menos dolorosa, rs?

Muito obrigada!!!!
Tags: javascript+view,list,controller


1
Vem com o nome de cada aluno por que você colocou ali ".nome" ... tire e você tera todo o objeto aluno.
O ideal seria você usar Ajax.
Rapaz... posso sugerir um alternativa mais simples sem javaScript?

Seguinte:

def alunoList = Aluno.list(max: 1, offset: 0)
def total = alunoList.getTotalCount() // se get total nao funcionar tenta outra forma de contar.




usa o paginate do grails


<g:paginate total="${total}" action="list" params="${params}"/>



será que não resolve o que você precisa?


0
Oi Evandro ,

Realmente eu usei o paginate e resolveu o meu problema. obrigada! :)
17/02/2014 15:09



Ainda não faz parte da comunidade???

Para se registrar, clique aqui.


Aprenda Groovy e Grails com a Formação itexto!

Newsletter Semana Groovy

Assinar

Envie seu link!


Livro de Grails


/dev/All

Os melhores blogs de TI (e em português) em um único lugar!

 
Creative Commons
RSS Grails Brasil é mantido por itexto Consultoria.
Em caso de problemas contacte Henrique Lobo Weissmann (Kico) por e-mail: kico@itexto.com.br
Todo o conteúdo presente neste site adota o Creative Commons como licença padrão.
Ver: 4.14.0
itexto