Html表单,单选按钮和Servlet

时间:2009-07-20 18:10:16

标签: html forms servlets radio-button

我写了一个servlet,它构建了一个显示数据库内容的html页面。代码是:

Statement st = (Statement) conexion.createStatement();                     
ResultSet rs = st.executeQuery("select * from audiolist" );
while (rs.next())
   {
    contador++;
    out.println("<tr>");
    String k = rs.getString("Tittle");
    String l = rs.getString("Autor");
    String m = rs.getString("Album");
    out.println("<td>"+"<input type=\"radio\" name=\"titulo<%="+contador+"%>\"value=\""+k+"\">");
    out.println("<td>" + k + "</td>");                        
    out.println("<td>" + l + "</td>");
    out.println("<td>" + m + "</td>");       
    out.println("</tr>");
    }
    out.println("</table></center>");
    out.println("<tr><td colspan=2><input type=submit></td></tr>");
    out.println("</form>");

我在每一行都添加了一个单选按钮。使用此代码,我可以在浏览器中显示包含数据库内容的表。当我点击提交时,我想向另一个servlet发送所选行的值“k”。我很难过。我想我发送的值不正确。在第二个servlet中,是否足以使用getParameter()来获取信息?

谢谢!

2 个答案:

答案 0 :(得分:0)

在第二个servlet中,您可以使用:

String value = request.getParameter("tituloX");

读取值。您需要知道要执行的参数的名称。如果不知道,您可以尝试枚举参数:

for ( Enumeration e = request.getParameterNames(); e.hasMoreElements();) {
  String param = (String) e.nextElement();
  String value = request.getParameter(param );
}

这仅适用于具有单个值的参数。

答案 1 :(得分:0)

这条线是否正确?

out.println("<td>"+"<input type=\"radio\" name=\"titulo<%="+contador+"%>\"value=\""+k+"\">");