0

A list of courses is displayed and user has to select 1, so I used radio buttons. The course list vary from one student to another.

If I have more than 1 courses displayed and user selects one, everything is ok, but if I display 1 course, the test is JS seems to not be right...

Validate if radio button(a course) was checked:

function validate2() {
                //validate radio buttons(if a course is selected)
                var n = document.entry2.courses.length;
                ok = 0;

                for(var i = 0; i < n; i++){
                    if(document.entry2.courses[i].checked){
                        ok++;
                        break;
                    }
                }            

                if((document.entry2.ex.checked == true)||
                  (document.entry2.sem.checked == true)||
                  (document.entry2.lab.checked == true)||
                  (document.entry2.pro.checked == true)){
                    ok++;
                }

                if(ok == 2){
                    return true;
                }else{
                    alert("Please select 1 course and at least 1 activity! ok=" +ok);
                    return false;
                }                
            } 



<form action="Result.jsp" method="post" name="entry2" onSubmit = "return validate2()">

                  Please choose a course from the ones
                  <br> where student is assigned:<br><br>

               ...............

                <table border="1" cellspacing="1" cellpadding="8" bgcolor= #EBDDE2> 

                 <%
                 Iterator<String> i = cs.iterator();
                String sCourse = null;

                 while(i.hasNext()){
                   sCourse = i.next();    
                %>

                <tr>
                  <td><%= sCourse %><input type= "radio" name= "courses" value="<%= sCourse %>"></td>
                </tr>

                <%}%>
            </table>

ok is not becoming 1 at the for loop if there is 1 course only
Thank you!

2
Contributors
1
Reply
4
Views
5 Years
Discussion Span
Last Post by LastMitch
This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.