我想構建一個包含約20個問題的調查。所有問題都在同一頁面。選項根據用戶的選擇逐步顯示
整個調查的結構就像樹結構一樣。
最初,只有一個問題顯示在頁面中。
如果用戶選擇問題1的選項1,2,則調查結束。 如果用戶選擇問題1的選項3,4,5,則出現問題2。
如果用戶選擇的問題2的選項1,2,6,然後問題3次出現,否則轉到問題12.
如果用戶選擇問題3的1,2,轉到問題5,否則轉到問題4.
....
這是相當麻煩的切換問題(使用顯示:無和顯示:塊)由JavaScript時,有許多問題。
在這種情況下最簡單的方法是什麼?
以下代碼是根據雅各布的着作編寫的。
出現另一個問題。
如果用戶選擇其他選項,我需要隱藏並顯示另一個問題。
選項2a的1 - >顯示Q12
選項4 2a的 - >顯示Q3和隱藏Q12
選項1 Q3的 - >顯示Q4
選項1 2a的 - >顯示Q12,隱藏Q3和Q4 < - - 這種情況相當複雜
我該怎麼辦?
我已經看到了這樣做的服務器端,而不是客戶端,使用了一種類似於 wizard接口var responses = {
1 : {1:'end', 2:'end', 3:2, 4:2, 5:2, 6:2},
'2a': {1:12,2:12,3:3,4:3,5:3,6:12}
};
function handleResponse(question, key) {
option = question.selectedIndex+1;
var next = responses[key][option];
if (next=='end') return;
showQuestion(next);
}
function showQuestion(question){
$('tr[id^=trQ'+question+']').show();
}
出現的另一個問題。如果用戶選擇其他選項,我需要隱藏和顯示另一個問題。 – Billy 2009-07-08 03:50:19