Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Filtr logów
korniks
post 28.06.2012, 22:16:53
Post #1





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 22.03.2012

Ostrzeżenie: (0%)
-----


Witam,

zrobiłem sobie właśnie filtr do logów. Za każdym razem jak użytkownik wpisze w pole input jakiś znak, ten przeszuka baze i wydrukuje mu przefiltrowane dane. Zapytania do bazy idą asynchronicznie, korzystam tutaj z JQuery. Problem polega na tym, że skrypt reaguje na event keyup, co powoduje że w krótkim czasie może być wysłana spora ilość żądań przez co czasami się zdarza że po wysłaniu dwóch żądań to pierwsze wykona się po 2, rezultatem tego są nieaktualne dane wydrukowane na ekranie. Jak sobie z tym poradzić?

Mój kod

[JAVASCRIPT] pobierz, plaintext
  1. var input = $("#logExt-form :input");
  2.  
  3. input.keyup(function(e){
  4.  
  5. var data = {};
  6.  
  7. input.each(function(){ // pól input jest 6
  8. data[this.name] = $(this).val();
  9. });
  10.  
  11. dataJSON = JSON.stringify(data);
  12. console.log(data);
  13. $.ajax({
  14. url : "/admin/modules/CmsModulesAdminLogsExtensionBundle",
  15. cache : false,
  16. data : { "data" : dataJSON},
  17. success : function(data){
  18. $("#ajax-content").html(data);
  19. }
  20. });
  21.  
  22. });
[JAVASCRIPT] pobierz, plaintext




Ten post edytował korniks 28.06.2012, 22:25:41
Go to the top of the page
+Quote Post
rocktech.pl
post 29.06.2012, 08:03:17
Post #2





Grupa: Zarejestrowani
Postów: 587
Pomógł: 131
Dołączył: 8.02.2010

Ostrzeżenie: (0%)
-----


Witam.

Metoda change będzie bardziej odpowiednia.

[JAVASCRIPT] pobierz, plaintext
  1. ...
  2. input.change(function(e){
  3. ....
[JAVASCRIPT] pobierz, plaintext


Zawsze możesz zbindować klika zdarzeń np.

[JAVASCRIPT] pobierz, plaintext
  1. input.bind("keyup change", function(e) {
[JAVASCRIPT] pobierz, plaintext


--------------------
Despite the tons of examples and docs, mod_rewrite is voodoo. Damned cool voodoo, but still voodoo. --Brian Moore

I never go looking for a sucker. I look for a Champion and make a sucker of of him. --Amarillo Slim


Home-made : js-gui-classes | Accordion | Tabs | Carousel / php-sms-classes | Obsługa bramki SMS MultiInfo | Obsługa bramki SMS Mobiltek
Go to the top of the page
+Quote Post
korniks
post 29.06.2012, 11:11:11
Post #3





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 22.03.2012

Ostrzeżenie: (0%)
-----


Wielkie dzięki, rzeczywiście zmiana eventu na change załatwiła sprawe.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 23.06.2025 - 08:58