使用单选按钮更改记录。

时间:2014-03-11 14:50:50

标签: java javascript jquery jsp radio

如何使用单选按钮更改和更新记录列表? 我有一个学生对象列表(studentList),它在UI中显示如下:

enter image description here

所以现在我改变Tom和Sally的成绩并点击“Update”。如何将这些信息传递回我的servlet?

public class Student{
    private String name;
    private String grade;
    //getters setters
}

我能够使用文本字段实现更新功能,但单选按钮看起来很棘手。

我使用c:forEach来遍历学生列表。

 <c:forEach var="student" items="${studentList}">
    <tr>
        <td>Tom</td>
        <td>
            <label for=""><input type="radio" name="tom" checked="checked"/>A</label>
            <label for=""><input type="radio" name="tom"/>B</label>
            <label for=""><input type="radio" name="tom"/>C</label>
            <label for=""><input type="radio" name="tom"/>D</label>
        </td>
    </tr>
    <tr>
        <td>Sally</td>
        <td>
            <label for=""><input type="radio" name="sally" checked="checked"/>A</label>
            <label for=""><input type="radio" name="sally"/>B</label>
            <label for=""><input type="radio" name="sally"/>C</label>
            <label for=""><input type="radio" name="sally"/>D</label>
        </td>
    </tr>
    .
    .
    .
    <tr></tr>

<button type="submit">Update</button>

1 个答案:

答案 0 :(得分:1)

您需要为每个单选按钮指定value。例如:

<!-- Using a single example -->
<!-- fixed the label issue in your HTML -->
<input type="radio" id="tom_A" name="tom" value="A" /> <label for="tom_A">A</label>
<input type="radio" id="tom_B" name="tom" value="B" /> <label for="tom_B">B</label>

然后,在您的servlet中,您将使用request.getParameter恢复其值:

String tomCalification = request.getParameter("tom");
System.out.println(tom);
//will print A if selected radio button with A
//will print B if selected radio button with B

与所有其他案件类似。