If this table doesn’t have too much record, I think Mario’s idea is a good one. You can play everything in a json and save it to html. If not, you can make an ajax while the guy type:
var $input = $('.search');
$input.on('keyup', function(e) {
// O que vai buscar
var needle = $.trim($suggestInput.val());
// Precisa ter ao menos 3 caracteres
if(needle.length < 3) {
if(needle.length > 0 || code == 27)
$suggestContainer.fadeOut('fast');
return false;
}
// Se foi o último buscado não busca de novo
if(needle == $input.attr('data-last')) {
// Aqui você mostra os resultados
return false;
}
// Mostra o loading...
// Se já tem alguma requisição em andamento, cancela ela
if(ajaxRequest && ajaxRequest.readyState != 4){
ajaxRequest.abort();
}
// Faz a busca
ajaxRequest = $.ajax({
url: '/search-trainings',
type: 'GET',
dataType: 'json',
data: {q: needle},
}).done(function(result) {
$input.attr('data-last', needle);
// Faz aqui o que você precisa
}).fail(function() {
// Se der erro na requisição
}).always(function() {
// Retira o loading
});
});
I understand you want to work with asynchronous calls. See if you have anything here that can help you https://stackoverflow.com/questions/14236296/asynchronous-function-call-in-php. you probably already have it fixed link here
– Michael Lelis