Autor | Zpráva | ||
---|---|---|---|
Honza_n Profil * |
#1 · Zasláno: 4. 7. 2010, 23:42:03
Ahoj,
poradí mi někdo, proč ve funkci nastav_vzory() nemohu zpřístupnit proměné rod, skupina a cislo? Jak to vyřešit? Použil jsem JQuery. function nastav_vzory() { var vzory=$("select[name=vzory]"); var zkratka= rod.val()+skupina.val()+cislo.val(); alert(zkratka); } $(document).ready(function() { var rod=$("select[name=rod]"); var cislo=$("select[name=cislo]"); var skupina=$("select[name=skupina]"); rod.change(function () { $(rod,"option:selected").each(function () { nastav_vzory(); }); }) cislo.change(function () { $(cislo,"option:selected").each(function () { nastav_vzory(); }); }) skupina.change(function () { $(skupina,"option:selected").each(function () { nastav_vzory(); }); }) }); |
||
Nox Profil |
#2 · Zasláno: 5. 7. 2010, 00:38:52
|
||
Chamurappi Profil |
#3 · Zasláno: 5. 7. 2010, 00:53:09 · Upravil/a: Chamurappi
Reaguji na Noxe:
Kde se tam píše o omezení platnosti proměnné? Otázka nesouvisí s použitým frameworkem. Reaguji na Honzu_n: Buď dej funkci nastav_vzory dovnitř té anonymní funkce, nebo udělej z proměnných rod , cislo a skupina globální (tedy nadeklaruj je var em umístěným mimo funkci).
|
||
_es Profil |
#4 · Zasláno: 5. 7. 2010, 00:59:47
Honza_n:
„poradí mi někdo, proč ve funkci nastav_vzory() nemohu zpřístupnit proměné rod, skupina a cislo? Jak to vyřešit? Použil jsem JQuery.“ Pretože sú to lokálne premenné nepomenovanej funkcie definovanej od siedmeho riadku a tie sú neprístupné mimo tej funkcie. „Jak to vyřešit?“ Jednou z možností je použitie globálnych premenných: Na začiatok kódu dáš: var rod, cislo, skupina; var .
„Použil jsem JQuery.“ JQuery sa tento dotaz netýka, celé jQuery je v JavaScripte syntakticky implementované ako definícia jednej globálnej funkcie s názvom $ .
|
||
Nox Profil |
#5 · Zasláno: 5. 7. 2010, 01:41:23
Chamurappi:
Pravda, ale i tak se mi nějak nezdají u $() uvnitř funkcí ... jako 2. atribut je buď context, ownerDocument nebo prop(ertie)s, z čehož mě nic na option:selected nesedí atd. |
||
Chamurappi Profil |
#6 · Zasláno: 5. 7. 2010, 04:44:00
Reaguji na Noxe:
Pravda. Ale zřejmě mu tenhle nesmysl žádné potíže nepůsobí, protože jQuery druhý argument ignoruje, když ten první není řetězec. |
||
Honza_n Profil * |
#7 · Zasláno: 5. 7. 2010, 08:02:35
Jsem to nadeklaroval a funguje to.
Nox Chcete říct, že mám bych objekt měl předat přes argument funkce? |
||
Honza_n Profil * |
#8 · Zasláno: 5. 7. 2010, 08:49:29
Mohl bych se zeptat ještě na jednu věc?
mám tento objekt: vzory.poj.zz1 a chtěl bych ho zpřístupnit pomocí zkratky, protože s ním pracuji dynamicky. "zkratka" je nazev proměnné, která obsahuje název vlastnosti objektu vzory.poj. Tzn. že místo zz1 potřebuju dosadit tu zkratku. vzory.poj.zkratka jako vlastnost ale neexistuje. |
||
_es Profil |
#9 · Zasláno: 5. 7. 2010, 09:54:55
Honza_n:
Ani po mnohonásobnom prečítaní mi nie je dosť jasné, na čo sa pýtaš. Možno to súvisí s problémom popísaným tu. |
||
Honza_n Profil * |
#10 · Zasláno: 5. 7. 2010, 10:02:04
Tak to je ono
vzory.poj[zkratka] Dík |
||
ah01 Profil |
#11 · Zasláno: 5. 7. 2010, 15:44:53
Honza_n:
Vrátím se k tomu co psal Nox, jsi si jistý, že: $(rod,"option:selected") |
||
Honza_n Profil * |
#12 · Zasláno: 6. 7. 2010, 14:40:58
Já ti stejně moc nerozumím. Mě to funguje. Já nevím co si mám představit pod pojmem kontext selectoru. Kontext chápu jako v čem je ten element zařazený. Jako že je zařazený ve fieldset.
|
||
Časová prodleva: 14 let
|
0