NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!
Avatar
Verquido
Tvůrce
Avatar
Verquido:19.5.2016 16:49

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.5.2016 16:49
Avatar
Odpovídá na Verquido
Neaktivní uživatel:19.5.2016 17:43

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.5.2016 17:44
Nahoru Odpovědět
19.5.2016 17:43
Neaktivní uživatelský účet
Avatar
Robert Poč
Člen
Avatar
Robert Poč:20.5.2016 10:59

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.5.2016 10:59
Avatar
Odpovídá na Robert Poč
Neaktivní uživatel:20.5.2016 11:19

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.5.2016 11:19
Neaktivní uživatelský účet
Avatar
Verquido
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Verquido:20.5.2016 13:23

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

 
Nahoru Odpovědět
20.5.2016 13:23
Avatar
Odpovídá na Verquido
Neaktivní uživatel:20.5.2016 13:58

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.5.2016 13:58
Neaktivní uživatelský účet
Avatar
Verquido
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
Verquido:20.5.2016 14:05

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.5.2016 14:05
Avatar
Odpovídá na Verquido
Neaktivní uživatel:20.5.2016 15:58

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.5.2016 15:58
Neaktivní uživatelský účet
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.