JavaScript esemény ütközés
Adott egy oldal egy inputtal és egy pár linkkel. Az input mező onChange eseményre elküld a szervernek egy ajax hívást, hogy beállítson egy session változót. A szerver válaszát megjeleníti az oldalon.
Az a gondom, hogy ha a user átírja az input értékét és rákattint egyből utána az egyik linkre, akkor a link onClick és az input onChange eseménye egyszerre következik be.
A kattintás miatt a böngésző továbbdobja a usert a linkelt oldalra és emiatt az onChange-hez kapcsolt függvény nem tud lefutni. Be tudnék éppen tenni valami késleltetést a link katt-hoz de nem tűnik a legjobb megoldásnak.
Ötletek?
■ Az a gondom, hogy ha a user átírja az input értékét és rákattint egyből utána az egyik linkre, akkor a link onClick és az input onChange eseménye egyszerre következik be.
A kattintás miatt a böngésző továbbdobja a usert a linkelt oldalra és emiatt az onChange-hez kapcsolt függvény nem tud lefutni. Be tudnék éppen tenni valami késleltetést a link katt-hoz de nem tűnik a legjobb megoldásnak.
Ötletek?
sjax
el is felejtettem, hogy lehet
Megnézem, hogy ezzel jó lesz-e
Nem túl barátságos...
Szerintem az AJAX kérés elküldésekor állíts be egy flaget, hogy "események felfüggesztve". A link clickje (és más események) pedig ellenőrizzék a flaget, és ilyen esetbe egy queue-ba dobják be magukat.
A válasz mgérkezése és feldolgozása után ellenőrizheted a queue-t, és futtathatod az ott várakozó eseményeket.
Más: én sose használnám egy textbox onChange eseményét...
nem a koncepció a baj?
hack megoldás: amikor elindul az onchange esemény akkor beállítod, hogy a link onclick-je ne futhasson le (ráakasztasz egy eseményt), és amikor visszakapod a választ, akkor újra kattinthatóvá teszed (leszeded róla az eseményt).