Já tem mais de um ano que eu fiz isso… Mas vou colocar aqui o que eu lembro…
Veja a função abaixo:
$(document).on("click", "#divResultado .pagelinks a", function(e) {
e.preventDefault();
var url = $(this).prop("href");
$.ajax({
dataType: 'html',
type: 'post',
url: url,
success: function(pagina) {
$("#divResultado").html(pagina);
}
});
});
O requestUri seria a action/controller que será responsável por executar a função de consulta… correto?
E aí se eu não me engano, os links da paginação são criados automaticamente pelo displaytag, não é isso?
E o seu problema é que quando clica em algum link da paginação (“1”,“2”,“3”,“4”), ele atualiza a página inteira… Não é isso?
Se for isso, a função acima irá te ajudar.
Este bloco de código está dizendo que ao clicar no link que possui a classe “pageslinks” e vier seguido de um “a”, que seria o link ele irá executar… Veja se a div que possui esta consulta tem o ID -> “#divResultado”, entendeu?
$(document).on("click", "#divResultado .pagelinks a", function(e) {
E aí para não atualizar toda a página, ele utiliza o seguinte bloco:
e.preventDefault();
var url = $(this).prop("href");
$.ajax({
dataType: 'html',
type: 'post',
url: url,
success: function(pagina) {
$("#divResultado").html(pagina);
}
});
Ele “para” a execução do link através do “e.preventDefault();” e retorna os valores da consulta através de uma página html que será renderizada na “#divResultado”.
Não sei se eu embolei mais do que ajudei… Mas acho que é isso…