Autor | Zpráva | ||
---|---|---|---|
regy Profil |
#1 · Zasláno: 29. 11. 2008, 09:09:46
Zdravím,
právě jsem se dostal ke krásnému článku o tomoto fóru a doufám, že se netýká mých příspěvků, nebo alespoň ne moc. Doporučuji všem, kteří nečetli ;-). Ale zpět k mému problému. Je složité vysvětlovat o co se jedná, ale pokusím se. Na svých stránkách mám formulář (složený z checkboxů a radiobuttonů), který zachycuje změny na stránce. Například při zavření nějakého panelu, se ve formuláři odškrtne kolonka určená tomuto panelu. Všechny checkboxy a radiobuttony mají nastaveno, že onchange se formulř odešle (aby se uložily změny). Problém je ale v tom, že onchange funguje pouze při ručním změnění checkboxu, nikoliv změnění pomocí javascriptu. Pro pochopení se prosím podívejte na http://www.kablik.cz/beta/ a mějte prosím ohled na to, že je to betaverze stránky ;-). S tímto problémem se potýkám již delší dobu, zkoušel jsem i napsat, že při kliknutí na ikonu, která nějaký panel vládá se formulář odešlě také, to ale z neznámého důvodu nefungovalo a byl bych vám tedy velice vděčný, kdybyste mi někdo poskytl vaší pomoc. |
||
Časová prodleva: 4 dny
|
|||
Chamurappi Profil |
#2 · Zasláno: 3. 12. 2008, 10:50:05
Reaguji na regyho:
„onchange='self.document.forms.mainset-form.submit();'“ Odečítáš výsledek funkce „form.submit“ od „self.document.forms.mainset“? V identifikátoru nemůžeš mít pomlčku. Je to vtipná situace, protože ten zápis funguje — zavolání form.submit() odešle aktuální formulář. „onchange funguje pouze při ručním změnění checkboxu, nikoliv změnění pomocí javascriptu“ V Exploreru funguje onchange na checkboxu zpožděně. Na daném webu jsem si nevšiml ničeho, co by měnilo zaškrtnutí skriptem. Každopádně jestli tam něco takového je, může to i samo zavolat ten submit. |
||
regy Profil |
#3 · Zasláno: 3. 12. 2008, 14:38:20
Děkuji.
„Na daném webu jsem si nevšiml ničeho, co by měnilo zaškrtnutí skriptem. Každopádně jestli tam něco takového je, může to i samo zavolat ten submit.“ Ano něco takové tam je. Možná javascript zrovna upravoval a něco jsem udělal špatně, tak to nefungovalo. Ale jinak když se rozklikne nastavení a pak zavíráte nebo otevíráte panely, tak se mění i checkboxy. Do scriptu, který mění checkboxy jsem sem zokoušel zakomponovat submit(), ale neúspěšně. Pravděpodobně asi proto, že je v identifikátoru pomlčka. Děkuji za odpověď, uý jsem nečekal, že mi někdo odpoví a ještě sem později napíšu, jak to dopadlo ;-). |
||
regy Profil |
#4 · Zasláno: 3. 12. 2008, 14:45:54
Tak teď už vše funguje. V javascriptu nejsem zrovna nejzdatnější a nepředpokládal jsem, že js zareaguje takto;-). Důvod, proč jste neviděl, co na webu mění checkboxy je ten, že se web načetl bez stylů. Když kliknete na nastavení -> vthled a tam něco vyberete a odešlete, bude to hned pochopitelnější ;-). Ještě jednou vám moc děkuji.
|
||
Chamurappi Profil |
#5 · Zasláno: 3. 12. 2008, 14:52:22
Reaguji na regyho:
Aha, ty panely jdou zavřít i křížkem v jejich záhlaví, toho jsem si nevšiml. Řekl bych, že checkboxy by měly při onclicku volat stejnou funkci jako ty zavírací křížky. Funkci, která srovná stav checkboxů a panelů (tím či oním směrem) a odešle formulář. Událost onchange bych na tvém místě nepoužíval vůbec. |
||
regy Profil |
#6 · Zasláno: 4. 12. 2008, 17:46:46
jako abych používal onclick místo onchange?
|
||
Chamurappi Profil |
#7 · Zasláno: 4. 12. 2008, 18:06:48
Reaguji na regyho:
Ano. |
||
Časová prodleva: 15 let
|
0