java - 查找复选框是否在 servlet 中被选中

标签 java html servlets

我在一个表单中有几个复选框,我只是想检查它们是否被选中。

如果选中,我需要将他们的 ID 存储在数据库中(我可以做到)。但我的问题是如何确定是否选中,而不是一次选中每个复选框。 我需要检查它是否在 servlet 中被选中。

这是我的代码

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
Role Id<input type="text" name="roll_id"/><br>
Role Name<input type="text" name="roll_name"/><br>
Role Description<textarea name="roll_desc"></textarea><br>
<br>
<br>

Screen1<br>

tab1<br>

<input type="checkbox" name="s1_t1_view" value="s1_t1_view" >view<br>
<input type="checkbox" name="s1_t1_add" value="s1_t1_add" >add<br>
<input type="checkbox" name="s1_t1_edit" value="s1_t1_edit" >edit<br>
<input type="checkbox" name="s1_t1_delete" value="s1_t1_delete" >delete<br>

tab2<br>

<input type="checkbox" name="s1_t2_view" value="s1_t2_view" >view<br>
<input type="checkbox" name="s1_t2_add" value="s1_t2_add" >add<br>
<input type="checkbox" name="s1_t2_edit" value="s1_t2_edit" >edit<br>
<input type="checkbox" name="s1_t2_delete" value="s1_t2_delete" >delete<br>



Screen2<br>

tab1<br>

<input type="checkbox" name="s2_t1_view" value="s2_t1_view" >view<br>
<input type="checkbox" name="s2_t1_add" value="s2_t1_add" >add<br>
<input type="checkbox" name="s2_t1_edit" value="s2_t1_edit" >edit<br>
<input type="checkbox" name="s2_t1_delete" value="s2_t1_delete" >delete<br>

tab2<br>

<input type="checkbox" name="s2_t2_view" value="s2_t2_view" >view<br>
<input type="checkbox" name="s2_t2_add" value="s2_t2_add" >add<br>
<input type="checkbox" name="s2_t2_edit" value="s2_t2_edit" >edit<br>
<input type="checkbox" name="s2_t2_delete" value="s2_t2_delete" >delete<br>
<input type="submit" name="sumbit" text="submit">
</body>
</html>

但是在我的代码中我有几个复选框。我需要对每个复选框进行硬编码。有没有办法让我把它放在一个循环中并检查所有复选框?

最佳答案

为了简单起见,您可以使用 name 属性来获取数据,因为您为每个复选框使用了不同的名称。

在 Servlet 中:

String[] s1_t1_view = request.getParameterValues("s1_t1_view");
String[] s1_t1_add = request.getParameterValues("s1_t1_add");

如果您想使用一组复选框让用户在多个值之间进行选择,您将需要在 servlet 中迭代该组。你可以使用这个:

在 HTML 中:(相同的名称 = 相同的组)

<input type = "checkbox" name = "s1_t1" value = "s1_t2_view"   >View  <br>
<input type = "checkbox" name = "s1_t1" value = "s1_t2_add"    >Add   <br>
<input type = "checkbox" name = "s1_t1" value = "s1_t2_edit"   >Edit  <br>
<input type = "checkbox" name = "s1_t1" value = "s1_t2_delete" >Delete<br>

在 Servlet 中:

String[] results = request.getParameterValues("s1_t1");
for (int i = 0; i < results.length; i++) {
    System.out.println(results[i]); 
}

关于java - 查找复选框是否在 servlet 中被选中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16560890/

相关文章:

java - 有没有办法从 Java 中的方法提供自动扫描器输入?

java - 使用 hibernate 参数设置 Postgresql 架构

javascript - 没有div或以某种方式放大图像

javascript - jqGrid 仅更改一个网格的选定行样式 ui-jqgrid ui-state-highlight,而不是同一页面上的所有其他网格

css - 由于 HTML5 ASP.net 中的 DOCTYPE,100% 高度不起作用

java - 对三角形进行排序时快速排序太慢

java - Android : java. lang.NullPointerException: CameraUpdateFactory 未初始化

java - NoSuchMethodError - org.hibernate.cfg.Environment

java - 关于从 servlet 提供静态文件的问题

java - Tomcat webapp 无法在目录中创建文件,因为权限被拒绝