java - 从 Servlet 获取复选框值

标签 java mysql html servlets

我有一个带有 MySQL 数据库的 servlet。它看起来像这样:enter image description here

这是它的一段代码:

out.println("<table id = \"main_section\" cellspacing=\"1\" bgcolor=\"red\" > ");
out.println ("<tr> ");
out.println("<td >NUMBER</td>");
out.println("<td >PAYMENT</td>");
out.println("<td >RECEIVER</td>");
out.println("<td >VALUE </td>");
out.println("<td >CHECKBOX</td>");
out.println("</tr>");
out.println("<tr>");
for (int i = 0; i < ex.getExpenses().size(); i++) {
    out.println("<td > " + ex.getExpenses().get(i) + "</td>");

    if (i>0 && (i+1)%4==0) {
        out.println("<td><input type=\"checkbox\" name=\"checkbox\"></td>");
        out.println("</tr><tr>");

    }     
}
out.println("</tr>");

我需要做的是创建一个提交按钮来计算选中框的 VALUE 之和。例如,如果选中 NUMBER 1 和 2,提交按钮应给出结果 5577.0 (VALUE 22.0+5555.0)。 谁能帮我解决这个问题?

最佳答案

首先,您应该了解 JSP 并从 JSP 而不是 servlet 生成 HTML 标记。

现在解决你的问题。这些行中的每一行都来自数据库表。所以这些行中的每一行都应该有一个 ID(主键)。将行的 ID 分配给复选框的值。当您提交表单时,servlet 将收到所有选中复选框的 ID。从数据库中获取这些ID对应的值,并求和(或者直接执行查询求和):

<input type="checkbox" name="checkedRows" value="${idOfCurrentRow}">

在处理表单提交的 servlet 中:

String[] checkedIds = request.getParameterValues("checkedRows");

关于java - 从 Servlet 获取复选框值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10658945/

相关文章:

javascript - IIS 7 不允许用于访问路径 ' ' 的 HTTP 动词 POST

java - 如何使用源导入 org.eclipse.pde.internal?

java - 为什么这个基本的 Java 程序不起作用?

java - 异构数组的意义何在?

MySQL:试图找到正确的 MySQL 查询

php - 被锁定在本地 wordpress 之外

javascript - float 表头+圆 Angular 的副作用

java - 使用 Web 服务获取 cookie 值中的用户名和密码

mysql - 在 WHERE IN 条件之外返回的行

jquery动画与手机