Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何确保单选按钮组在HTML中不会相互取消选择?_Java_Jsp_Servlets_Jdbc - Fatal编程技术网

Java 如何确保单选按钮组在HTML中不会相互取消选择?

Java 如何确保单选按钮组在HTML中不会相互取消选择?,java,jsp,servlets,jdbc,Java,Jsp,Servlets,Jdbc,我面临一个问题,在查看页面上显示问题和选项,并将结果提交到结果页面,检查结果是否正确。代码如下 问题是单选按钮只允许选中一个。请看下面我的截图。我怎样才能解决这个问题 [TakeExam.jsp] <form method="post" action="Examprocess" class="form-horizontal"> <div class="form-group"> <label class="control-label col-sm

我面临一个问题,在查看页面上显示问题和选项,并将结果提交到结果页面,检查结果是否正确。代码如下

问题是单选按钮只允许选中一个。请看下面我的截图。我怎样才能解决这个问题

[TakeExam.jsp]

<form  method="post"  action="Examprocess" class="form-horizontal">
   <div class="form-group">
     <label class="control-label col-sm-1" style="color: white"> Subject:</label>    
         <div class="col-sm-3">
         <select class="form-control" name="sub">
         <option>Select your choice</option>
        <option>cprog</option>
        <option>cpp</option>
        <option>html</option>
        <option>java</option>  
         </select>
         </div>
         </div>
    <div class="form-group">   
         <div class="col-sm-offset-2 col-sm-10">
       <input style="color:red" type="submit"  value="start exam" />
       </div>
       </div>
  </form>
[CTest.java]

package exam.DAO;
import java.sql.*;
import java.util.ArrayList;

import exam.DTO.ExamQ;
import exam.utilities.ConnectionFac;

public class CTest {

    Connection cn = null;
    PreparedStatement ps = null;
    Statement st = null;
    ResultSet rs = null;
    ConnectionFac con = new ConnectionFac();
    String selectctest ="select * from ctest";

    public ArrayList<ExamQ> getdata() {

        ArrayList<ExamQ> arr =new ArrayList<ExamQ>();


        try {
            rs=con.getResultSet(selectctest);
            while(rs.next()) {
                ExamQ examques =new ExamQ();
                examques.setQid(rs.getShort(1));
                examques.setQuestion(rs.getString(2));
                examques.setOption1(rs.getString(3));
                examques.setOption2(rs.getString(4));
                examques.setOption3(rs.getString(5));
                examques.setOption4(rs.getString(6));
                examques.setAnswer(rs.getString(7));
                arr.add(examques);

            }
        } catch (SQLException e) {

            e.printStackTrace();
        }
        return arr;
    }



}
[view.jsp]

<div class="row">
   <div  class="col-sm-4" >
   </div>
  <div  class="col-sm-8" >

   <form method="post" action="result.jsp">

   <% int i=1; %>

<c:forEach items="${examq}" var="examq" >
  <label style="color:white">Q<%=i %>:<c:out value="${examq.getQuestion() }"></c:out></label><br>

  <label style="color:white" for="O1">O1:<c:out value="${examq.getOption1() }"></c:out></label>
  <input type="radio" name="radio" value="${examq.getOption1() }"><br>

  <label style="color:white" for="O2">O2:<c:out value="${examq.getOption2() }"></c:out></label>
  <input type="radio" name="radio" value="${examq.getOption2() }" ><br>

  <label style="color:white" for="O3">O3:<c:out value="${examq.getOption3() }"></c:out></label>
  <input type="radio" name="radio" value="${examq.getOption3() }"><br>

  <label style="color:white" for="O4">O4:<c:out value="${examq.getOption3() }"></c:out></label>
  <input type="radio" name="radio" value="${examq.getOption3() }"><br>  

  <hr>         
    </c:forEach> 


    <input type="submit" value="submit">

 </form>

  <a href="takeexam.jsp">GoBack</a>

  </div>
  </div>

问:
O1:
氧气:
O3:
O4:


问题在于HTML表单中的无线电组名称冲突。您正在对所有组使用以下命令:

name="radio"
您需要做的是为每个组使用不同的名称;按单词顺序排列,在单个组中对每个问题使用相同的名称。假设您的问题ID是整数,您可以执行以下操作:

name="radio_${examq.getQid()}"

这将确保每个组独立于其他组显示互斥的选择特征。

请发布实际代码,而不是截图。我已将其回滚到第一个问题状态,以帮助重新打开。为了澄清这个问题,我重新命名了标题。对于您的其他问题,Raju,请提出一个全新的问题。避免搁置问题符合您的利益,因为太多的问题会自动禁止提问。现在它正常工作了,谢谢您的解决方案。但现在我有另一个问题。你也能解决这个问题吗?**代码张贴在**上方,欢迎使用。请看我在问题下的评论。我如何检查答案是否正确并给它们打分。分数显示在result.jsp页面上。请#halfer给我一个解决方案。这是一个新问题@Raju,所以请问一个关于堆栈溢出的新问题。非常感谢@halfer
name="radio"
name="radio_${examq.getQid()}"