Avatar
Paranormal
Redaktor
Avatar
Paranormal:

Zdravím, Jak se dělá dotazník, který má jen danou cestu?

v dotazníku je otázka ve které je odpověď A nebo B.
pokud odpovím A tak mě to přesměruje na otázku 2, ale počítá to že jsem minule odpověděl A a od toho se odvíjí další postup dotazníku a naopak s B.

Jak se to dělá? Myslím že je to v JS tak sem to dal sem :)

Odpovědět 19. května 16:49
„Když toho moc neumíme tak jsme na nejlepší pozici se něčemu naučit.“
Avatar
Taskkill
Redaktor
Avatar
Odpovídá na Paranormal
Taskkill:

Dle meho nazoru neni univerzalni pristup ... tedy alespon nevim o tom, ze by se to nejak univerzalne na webu resilo ... ja bych ti navrhnul strom otazek, vzdy tak, ze otazka ma x odpovedi a podle toho ma x potomku ... kazdy potomek je opet otazka s n potomky a n odpovedmi ... ohledne UI - pouzil bych nejakou peknou formularovou knihovnu a vic bych neresil... nebo muzes zkusit pohledat primo nejakou knihovnu co tohle dela... teoreticky na guthubu neco muzes objevit

vlastne me jeste napadlo ... tohle prepodklada, ze mas ruzne otazky, co se neopakuji .. pokud bys ale mel otazky co se casto opakuji a mimo to jak na ne clovek odpovi, take bude zalezet na tom v jake fazi dotazniku na ne takto odpovi ... no tak to bude chtit pozornejsi rozmysleni

Editováno 19. května 17:44
 
Nahoru Odpovědět  +1 19. května 17:43
Avatar
Robert Poč
Člen
Avatar
Robert Poč:

Toto s JavaScriptem nemá nic společného, je to obecný rozhodovací algoritmus, na jazyku nezáleží.

Nadefinuj si pole OTAZEK.
Nadeginuj si pole OTACKA - > ODPOVED -> DALSI_OTAZKA

Jakoukoli změnu dotazníku provedeš změnou otázky v poli OTAZEK případně v rozhodovacím poli, bez nutnosti měnit kód ankety, můžeš jednoduše přidávat, odebírat nebo úplně měnit téma.

 
Nahoru Odpovědět 20. května 10:59
Avatar
Taskkill
Redaktor
Avatar
Odpovídá na Robert Poč
Taskkill:

S prvním bodem souhlasím, s druhým ale vůbec ne .. pole bych vůbec nepoužil, podle mě tohle vede na strom jak vyšitej :

Jsi savec ? Ano ne ... létáš ? Ano ne ... jsi netopýr ?

Polema si jen komplikujes implementaci ... nemluvě o tom, že tam budeš mít tu otázku vždycky dvakrát ... jednou jako prvek v poli otázek, jednou jako následek po odpovědi na jinou otázku ... na co tohle ?

 
Nahoru Odpovědět 20. května 11:19
Avatar
Paranormal
Redaktor
Avatar
Odpovídá na Taskkill
Paranormal:

Taky si myslím že spíš strom. Ale jak na to?

Nahoru Odpovědět 20. května 13:23
„Když toho moc neumíme tak jsme na nejlepší pozici se něčemu naučit.“
Avatar
Taskkill
Redaktor
Avatar
Odpovídá na Paranormal
Taskkill:

Jak na to? Tak rekni ... vis jak zacit? Rekneme ze kazda otazka je objekt Otazka ... drzi si string zneni otazky a referenci na dalsi dva objekty typu Otazka v this.ano a this.ne ... jelikoz objekty se v js kopiruji jako reference neni si nad cim lamat hlavu ... zacnes jednou otazkou, ta povede na dalsi dve ... kazda z nich taktez ... no a dostanes strom ... doporucuji si ho psat do vlastniho scriptu, protoze se to trochu protahne

 
Nahoru Odpovědět 20. května 13:58
Avatar
Paranormal
Redaktor
Avatar
Odpovídá na Taskkill
Paranormal:

Tak v JavaScriptu jsem spíše nováček. Ale koncept stromu docela chápu, jen bych potřeboval nějaký příkladjak to poskládat do sebe :)
Díky

Nahoru Odpovědět 20. května 14:05
„Když toho moc neumíme tak jsme na nejlepší pozici se něčemu naučit.“
Avatar
Taskkill
Redaktor
Avatar
Odpovídá na Paranormal
Taskkill:

rozumim .. ja bych ti doporucoval nejdriv si vsechny otazky nadefinovat, treba do nejaky kolekce ... kdyz budes mit vsechny pohromade muzes si napsat script, ktery ti ten strom sestavi .. protoze jak jsem rekl... co kdyz se vyskytuje otazka, ktera uprostred dotazniku ma jiny vyznam nez na jeho zacatku ... to se muze snadno stat ..a ty jsi to nevyloucil, tak na to myslim,

proc bych to takhle udelal? data zvlast + logika zvlast

 
Nahoru Odpovědět 20. května 15:58
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 8 zpráv z 8.