Autor Zpráva
siginigin
Profil *
dobry den,
mam taku logicku hadanku: mam input text na ktorom je onblur zmazanie jedneho selectu. tento select by mala zmazat len v pripade, ze select.focused=false. select ma zase metodu onfocus, ktora nastavi vlastnost focused na true. cize vysledkom by malo by ze ker odidem hocikde inde okrem selectu, tak sa select zmaze, ale ked prejdem z inputu na select, tak select mal zostat.
problem je ze najprv sa vykona onblur, co zmaze select, a potom az onfocus, ktora uz vlastne neexistuje...

ako z toho von?

vdaka za radu.
peta
Profil
:)
co treba select pouze schovat pres visibility nebo z-index a position? A nebo jen presunout position pryc.

Proc chces ty selecty skryvat a disablovat? Neslo by to resit jinak? Napriklad, kdyz se podivas na seznamka.cz a rozklikas si kategorie (neni to nej stranka pro vzor, ale...), tak tam nemas jediny select. Jde o pristupnost.
Predpokladam, ze ses ten clovek, co chtel trojity rozbalovaci select + input pro zadani poctu kusu.

Moderátor Chamurappi: Odmazány blbosti.
siginigin
Profil *
no pokusam sa urobit nieco ako google suggestions, aj ked v ovela jednoduchsej forme.
takze mam form kde je input text meno a priezvisko. v db tabulke mam vsetky mena z kalendara. ked zacnem pisat meno, tak cez ajax mi pride ako odpoved vsetky mena, ktore zacinaju danymi znakmi. tie sa zobrazia cez span v selecte. sipkami hore a dole sa da posuvat po vybratej polozke v selecte a zaroven napise vybrate meno do inputu - focus ma stale a len input. ked odidem z inputu na priezvisko, tak chcem aby select zmizol, ale zaroven chcem mat aj druhu moznost kliknutim na select vybrat meno, vlozit ho do inputu, dat focus na priezvisko a zmazat select.

s tym schovanim cez visibility je to celkom dobry napad :) ...idem to hned vyskusat.

ps1: je to na internu stranku vo firme, js ma kazdy, a pouzivat to bude cca 20 ludi :D

ps2: ten clovek asi nebudem ja :(

Moderátor Chamurappi: Tvůj projev je špatně srozumitelný, piš prosím s diakritikou.
peta
Profil
"mena z kalendara. ked zacnem pisat meno, tak cez ajax mi pride ako odpoved vsetky mena, ktore zacinaju danymi znakmi."
v kalendari je 365 jmen +-, klidne je muzes pridat pres externi js, priklad:
http://www.volny.cz/peter.mlich/hry/sokoban.htm

Cili neco jako live-search
http://peter-mlich.wz.cz/web/js/pr2/index.htm
siginigin
Profil *
ano nieco ako tvoje live-search...len chyba tam par veci, prave ktore ja potrebujem:

- ked kliknem mimo zoznamu tak zoznam by mal zmiznut
- ked stlacim, sipku hore alebo dole budem sa moct posuvat po najdenych polozkach v zozname
toto sa mi uz podarilo urobit.

ale problem, ktory je aj na zaciatku rozpisany, stale pretrvava. skusim to este raz popisat:

napisem nejaky text do inputu. ajax odbehne na server a vrati sa s vysledkami. zobrazi sa zoznam vysledkov (select).
input ma nastavenu metodu onblur, aby zmazal select, ked strati fokus.
select ma nastavenu metodu onblur, aby sa zmazal, ked strati fokus.
no a zo selectu mozem vyberat dvomi sposobmi:
1. klavesnicou - sipkami hore a dolu, pricom sa zaroven do inputu prepisuje cely najdeny retazec. ked stlacim tabelator na preskocenie na dalsi input, spravne sa zavola metoda onblur objektu input a zmaze select. toto funguje v poriadku.
2. mysou - kliknem na retazec v selecte, ten sa prepise do inputu a prehodi fokus na dalsi input. tym sa zavola metoda onblur objektu select a zmaze select.
prave tu v 2. je ten problem: ja kliknem na select, ale najprv sa zavola metoda onblur objektu input, pretoze ten straca fokus, tato metoda zmaze select, takze vsetko dalsie sa nevykona, pretoze to neexistuje.

zatial som pokrocil tak, ze do onMouseMove a OnMouseOut objektu select som dal nastavovat select.focused = true a v druhom pripade false. ked metoda onblur objektu input chce zmazat select, predtym sa pozrie ci je select focused, ak nie, tak ho zmaze. toto by aj celkom fungovalo, len zase to nejde v IE, ide to vo FF (ine som neskusal)...

dufam, ze som to dobre napisal a ze sa vam to chcelo citat. kazdopadne vrela vdaka za nejaku radu, ktora by viedla von z tohto bludneho kruhu.
siginigin
Profil *
toto je ono: Odkaz

a tu je navod: Odkaz

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0