Re: [問題] 這個網頁程式碼要怎麼寫?
※ 引述《king31815 (口八押係)》之銘言:
: 小弟我想寫一個button的程式碼
: 點下去之後可以顯示我網頁裡單選紐與複選紐的答案
: 並且可以顯示答對率與答對題數
: 在每個選項後面顯示答對或答錯與正確答案
: 大概類似這個網頁裡的最下面那個按鈕http://0rz.tw/594RR
: 拜託各位大大幫忙
: 我想好幾天了
: 好不容易把計時器弄出來就差這個了
: 這個是我的網頁http://0rz.tw/b64Sx
這問題最單純的作法 , 就是每個單複選紐onclick後 ,
都設定它的value到代表某題目的某個隱藏的input裡面 ,
這樣可以省去一個一個檢查到底勾的是那一個的麻煩,
最後只要跑for loop 去測隱藏的input是不是正確中就好.
這是指思緒上得簡單.
次之就是把同一題的input name都設一樣 ,
先跑一個for 從第一題跑到最後一題 ,
用getElementsByName去抓每一題得子項目到底哪些是checked ,
先取出所有資料再來用一個answer array來作驗證跟統計.
採用後者需要的技術力較小 , 你應該會比較方便.
for example .
你的q1可以這樣寫
var answer = [null,"5"]; //(假設第一題答案是5 , null是index 0)
var questions=1;
var ansright=0;
for(var i=1;i<=questions;++i){
var eles=document.getElementsByName('Q'+i);
var ans=[]; //紀錄回答答案
for(var j=0;j<eles.length;++j){
if(eles[j].checked) ans.push(eles[j].value);
}
if(answer[i]==ans.join(",")){
document.getElementById('a'+i).innerHTML="答對了!";
++ansright;
}else{
document.getElementById('a'+i).innerHTML="答錯了!";
}
}
alert("共答對:"+ansright+"題");
這sample只要把你checkbox的name改一改 ,
另外答案如果是複選,每個答案要用逗號隔開,
這樣就可以直接套用在所有題目了. :p
當然 , 如果要防別人從網頁原始碼直接作弊的話 ,
不會這麼簡單 , 還得另外下功夫.
--
What do you want to have ? / What do you have?
從書本中,你可以發現我的各種興趣。
從CD中,你可以瞭解我所喜歡的偶像明星。
或許從文字你很難以瞭解一個人,但從物品可以。
My PPolis , My past. http://ppolis.tw/user/Tony
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 221.169.78.140
推
10/11 12:50, , 1F
10/11 12:50, 1F
→
10/11 12:51, , 2F
10/11 12:51, 2F
→
10/11 12:52, , 3F
10/11 12:52, 3F
→
10/11 12:52, , 4F
10/11 12:52, 4F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):