2012-02-29 7 views
1

私は本当にjavascriptで即座に必要です。JavaScriptを使用していくつかのmcq質問を検証する方法は?

xhtmlでmcqクイズを作成し、javascriptを使用して検証しようとしました。問題は、質問が未回答の場合に警告メッセージを表示できることです。しかし、私は、同じアラートメッセージに未回答の質問番号を列挙したいと思います。以下のコードをご覧ください。

直ちに解決が必要です。多くは事前に感謝します。

<script type="text/javascript"> 
<!-- 
function validateRadio(radio) { 
    var retval = false 
    for (var i = 0; i < radio.length; i++) { 
     if (radio[i].checked) retval = true; 
    } 
    return retval; 
} 

// to make sure all questions are answered 
function validateForm(theForm) // to make sure all questions are answered 
{ 
    var retval = true; 
    if (!validateRadio(theForm.q1)) retval = false; 
    if (!validateRadio(theForm.q2)) retval = false; 
    if (!validateRadio(theForm.q3)) retval = false; 
    if (!retval) alert("Answer all of the questions"); 
    return retval; 
} 

// --></script> 

<form name="quiz" action="result.php" method="post"> 

    <p>1. Choose the correct set of solution(s) by solving <img src="images/image002.png" width="93" height="17" alt=""/> equation?<br/> 
    &nbsp;&nbsp;&nbsp;<input type="radio" name="q1" value="1"/>gh<br/> 
    &nbsp;&nbsp;&nbsp;<input type="radio" name="q1" value="2"/>hk<br/> 
    &nbsp;&nbsp;&nbsp;<input type="radio" name="q1" value="3"/>h<br/> 
    &nbsp;&nbsp;&nbsp;<input type="radio" name="q1" value="4"/>ncb</p> 

    <p>2. What is the value of <i>x</i> when 78x ?<br/> 

    &nbsp;&nbsp;&nbsp;<input type="radio" name="q2" value="1"/>90<br/> 
    &nbsp;&nbsp;&nbsp;<input type="radio" name="q2" value="2"/>656<br/> 
    &nbsp;&nbsp;&nbsp;<input type="radio" name="q2" value="3"/>2<br/> 
    &nbsp;&nbsp;&nbsp;<input type="radio" name="q2" value="4"/>5</p> 

    <p>3. What is the value of 5x ?<br/> 
    <input type="radio" name="q3" value="1"/>+3<br/> 
    <input type="radio" name="q3" value="2"/>+6<br/> 
    <input type="radio" name="q3" value="3"/>-3<br/> 
    <input type="radio" name="q3" value="4"/>-6</p> 


    <p><input type="submit" name="submit" value="Submit Now!" onclick="return validateForm(this.form)"/></p> 

答えて

0

この操作を行います。

function validateForm(theForm) // to make sure all questions are answered 
{ 
    var retval = true; 
    var unanswered = ""; 
    if (!validateRadio(theForm.q1)){retval = false;unanswered += "Question1\n";} 
    if (!validateRadio(theForm.q2)){retval = false;unanswered += "Question2\n";} 
    if (!validateRadio(theForm.q3)){retval = false;unanswered += "Question3\n";} 
    if (!retval) alert("Answer all of the questions\nThe following were unanswered:\n" + unanswered); 
    return retval; 
} 
+0

にたくさん助けられたおかげで... – Kabil

関連する問題