2012-04-12 3 views
0

У меня есть этот поисковый скрипт на моей странице, который просматривает отображаемую таблицу. Таблица отображается с PHP из базы данных. Фактически это список, и этот список сортируется в алфавитном порядке с помощью гиперссылок от A до Z. Теперь мне нужно искать всю базу данных, а не отображать ее. Любые помощь или ресурсы будут полезны. :)Как я могу улучшить свой поисковый скрипт?

$(document).ready(function() { 

    $("#search").keyup(function() { 

     if($(this).val() != "") { 

      $("#some_table tbody>tr").hide(); 
      $("#some_table td:contains-ci('" + $(this).val() + "')").parent("tr").show(); 
     } else { 
      $("#some_table tbody>tr").show(); 
     } 
    }); 
}); 

$.extend($.expr[":"], { 
    "contains-ci" : function(elem, i, match, array) { 
     return (elem.textContent || elem.innerText || $(elem).text() || "").toLowerCase().indexOf((match[3] || "").toLowerCase()) >= 0; 
    } 
}); 
+0

Итак, вы хотите выполнить поиск в базе данных до вывода каких-либо данных? – MetalFrog

+0

да теперь я хочу искать всю базу данных. – Kaushank

+0

Возможно, принадлежит к [codereview] (http://codereview.stackexchange.com) –

ответ

0

Возможно, возвратите результаты с сервера как объект json.

http://your.hostname/database.json[{id:1,name:'joe'},{id:2,name:'bob'},...].

Затем динамически создайте отображаемую таблицу.

function refreshTable() { 
    $.ajax({ 
     url:'http://your.hostname/database.json', 
     dataType:'json' 
    }).done(function(json) { 
     $('#my_table tbody tr').remove(); 
     for (i in json) { 
      $('#my_table tbody').append($('<tr><td>'+json[i]['id']+'</td><td>'+json[i]['name']+'</td></tr>')); 
     } 
    }); 
} 

Вызов refreshTable, когда страница первоначально загружается, и, возможно, на определенные промежутки времени, или когда пользователь нажимает кнопку или что-то «обновить».

glhf!

Смежные вопросы