-
Fototrend
JavaScript != Java (A JavaScript nem összekeverendő a Javával, két különböző programozási nyelvről van szó!)
Új hozzászólás Aktív témák
-
Gergello
addikt
Sziasztok !
Egy kis jquery kódban kérném a segítségetek.
Van egy input text mező, amihez csináltam egy kis saját autocomplet funkciót.Működési elve: a szövegmező .on("input" ... eseményére csinálok egy ajax hívást, ami visszakap egy html kódrészletet és ezt kell megjeleníteni.
Helyi teszt szerveren minden tökéletes működött, mert gyors a szerver.
Felraktam az élesre és az a probléma, hogy a néha lassabban jön meg a válasz és ez miatt nem az utolsónak beírt (végső) input mező tartalom alapján kapott eredményt jeleníti meg, hanem az utolsónak befejeződött ajax hívás eredményét.Pl. begépeled, hogy "szerszámkészlet" szépen futnak a hívások, de előfordul, hogy legvégül csak a "szerszámk" keresőszó alapján kapott találatokat jeleníti meg. Hiába látom azt a Chrome Network fülben, hogy az utolsónak küldött ajaxban a "szerszámkészl" adatot küldte el a feldolgozó(válaszadó) résznek.
Szerintetek, hogy oldjam meg ?
Szerintem minden ajax hívásban meg kellene szakítani a korábban indított ugyanilyen hívást. De hogy ? Nagyon köszönöm.Kód:
$('#product_search').on("input", function() {doSearch();});function doSearch() {$search_string = $('#product_search').val();if ($search_is_first_submit || (!$search_is_first_submit && $search_string != $last_search_string)) {$.ajax({url: 'index.php?route=product/search/searchhint',type: 'post',data: 'search=' + $search_string,dataType: 'json',success: function(json) {if (json['success']) {$('#search-hint').html(json['success_text']);}}});}$last_search_string = $search_string;$search_is_first_submit = false;}function showSearchHint() {doSearch();$('#search-hint').removeClass('d-none');}function hideSearchHint() {setTimeout(function () {// Things to do before the focus is out$('#search-hint').addClass('d-none');}, 150);}
Új hozzászólás Aktív témák
- Dell Latitude 7420 Core i7-1185 G7, 16GB RAM, SSD, jó akku, számla, 6 hó gar, szép állapot
- AKCIÓ! Asus TUF A17 FA707RR FHD Gamer notebook - R7 6800H 16GB DDR5 512GB SSD RTX 3070 8GB W11
- Raktáron lévó 1851-es lapok! Garanciás termékek! Részletfizetésre is!!! ÉRDEKLŐDJ!!
- Konzol felvásárlás!! Nintendo Switch
- Dell Latitude 5300 13,3" FHD IPS touch, i5 - i7 8665U, 8-16GB RAM, SSD, jó akku, számla, 6 hó gar
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
