當(dāng)前位置:軟件學(xué)堂 > 資訊首頁(yè) > 網(wǎng)絡(luò)編程 > 編程其他 > JS代碼編寫在線考試(二)

JS代碼編寫在線考試(二)

2012/11/9 19:15:07作者:佚名來(lái)源:網(wǎng)絡(luò)

移動(dòng)端

【實(shí)例名稱】

JS代碼編寫在線考試(二)

【實(shí)例描述】

在線考試有很多種方法實(shí)現(xiàn),本例通過(guò)一個(gè)包含正確答案的數(shù)組判斷用戶選擇的答案與數(shù)組內(nèi)容是否匹配,實(shí)現(xiàn)最終的考試效果。

【實(shí)例代碼】

<html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>標(biāo)題頁(yè)-學(xué)無(wú)憂(yzddtk.cn)</title> <script language="JavaScript"> var Total_Question = 4  // 考題的數(shù)量 var msg = ""                            // 正確答案-保存在數(shù)組中   var Answer = new Array(Total_Question)   Answer[0] = "TCP/IP"   Answer[1] = "網(wǎng)關(guān)"   Answer[2] = "Microsoft"   Answer[3] = "網(wǎng)絡(luò)信息服務(wù)" function GetSelectedButton(ButtonGroup)//獲取用戶的選擇 {   for (var x=0; x < ButtonGroup.length; x++)     if (ButtonGroup[x].checked) return x   return 0 }

function ReportScore(correct) //顯示最終的考試結(jié)果 {   var SecWin =       window.open("","scorewin","scrollbars,width=300,height=220")   var MustHave1 = "<HTML><HEAD><TITLE>測(cè)驗(yàn)成績(jī)報(bào)告-學(xué)無(wú)憂(yzddtk.cn) </title></HEAD><BODY>"   var Percent = "<H2>測(cè)驗(yàn)成績(jī) : "+Math.round(correct/Total_Question*100)    + "</H2><HR>"   lastscore=Math.round(correct/Total_Question*100)   if (lastscore == "100"){   msg = MustHave1 +Percent + "<font color='red'>恭喜,全部答對(duì)了!</font> <p>" + msg  + "<input type='button' value='close' onclick=javascript:window.close()></BODY></HTML>"}   else {   msg = MustHave1 +Percent + "<font color='red'>正確答案:</font> <p>" + msg  + "<input type='button' value='close' onclick=javascript:window.close()></BODY></HTML>" }    SecWin.document.write(msg)                    //輸出提示信息   msg = ""                                      //清空信息提示 }

function Score() {   var correct = 0   var wrong = 0   for (number=0; number < Total_Question; number++)     {       var form = document.forms[number]      // 循環(huán)獲取每一個(gè)問(wèn)題       var i = GetSelectedButton(form.q1)     //獲取問(wèn)題中的選擇項(xiàng)       if (form.q1[i].value == "1")           //如果選擇1,表示選擇正確   { correct++ }  else   { wrong++                               //錯(cuò)誤的變量+1     msg += "Question "+(number+1)+"."     +Answer[number]+"<BR>"   }     }     ReportScore(correct)                    //輸出最終結(jié)果

} </script>

</head> <body> <table width="75%" border="0" align="center">   <tr>     <td>       <form> 三個(gè)非常簡(jiǎn)單的問(wèn)題:<p> (1)Internet上使用的網(wǎng)絡(luò)協(xié)議是:__________ <br> <input type="radio" name="q1" value="0" checked>FTP <input type="radio" name="q1" value="1">TCP/IP <input type="radio" name="q1" value="0">HTTP <br><br> </form>

<form> (2)GateWay是指:__________ <br> <input type="radio" name="q1" value="0" checked>網(wǎng)橋 <input type="radio" name="q1" value="0">集線器 <input type="radio" name="q1" value="1">網(wǎng)關(guān) <input type="radio" name="q1" value="0">路由器 <br><Br> </form>

<form> (3)ASP.NET是哪個(gè)公司的產(chǎn)品:__________ <br> <input type="radio" name="q1" value="0" checked>IBM <input type="radio" name="q1" value="1">Microsoft <input type="radio" name="q1" value="0">SUN <br><Br> </form>

<form> (4)IIS(Internet Information Server)的中文是:__________ <br> <input type="radio" name="q1" value="0" checked>在線網(wǎng)站管理 <input type="radio" name="q1" value="1">網(wǎng)絡(luò)信息服務(wù) <input type="radio" name="q1" value="0">網(wǎng)絡(luò)虛擬路由器 <br><Br> </form>

<form>         <div align="center">           <input type="button" name="Submit" value="看看成績(jī)"  onClick="Score()" class="pt9">         </div>       </form>     </td>   </tr> </table> </body> </html>

 

【運(yùn)行效果】

 在線考試代碼(二)運(yùn)行效果

【難點(diǎn)剖析】

本例的重點(diǎn)是將考題答案保存在一個(gè)數(shù)組“Answer”中,其目的是當(dāng)用戶選擇錯(cuò)誤時(shí)給出正確的答案。判斷用戶選擇是否錯(cuò)誤,是通過(guò)判斷單選框的返回值,如果為“1”則表示選擇正確。如果選擇錯(cuò)誤,通過(guò)“Answer[索引],,的方式獲取正確的答案。

【源碼下載】

為了JS代碼的準(zhǔn)確性,請(qǐng)點(diǎn)擊:在線考試JS代碼(二) 進(jìn)行本實(shí)例源碼下載 

標(biāo)簽: JS代碼  編寫