我可以通过id在jsp页面中获得单个项目的值。但是我无法获得复选框的值。如何获得ID或其他形式的复选框值。当我单击订购页面时,它将收集所有产品名称和产品价格
屏幕截图
here 代码为:
helloworld
答案 0 :(得分:1)
在这里,您可以使用值标签<input type="checkbox">
来将数据提供给用户。然后,需要为所有这些复选框赋予属性'name'
,您可以将其保持不变,然后可以将所有选定的值捕获为数组。
这是您需要在此代码中进行的更改::
<table class="table table-hover table-striped">
<thead>
<tr>
<th>ID</th>
<th>Choose Product</th>
<th>Product Name</th>
<th>Product Price</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<%
String Host = "jdbc:mysql://localhost:3306/shopbilling";
Connection connection = null;
Statement statement = null;
ResultSet rs = null;
Class.forName("com.mysql.jdbc.Driver");
connection = DriverManager.getConnection(Host, "root", "");
statement = connection.createStatement();
String query = request.getParameter("q");
String data;
if(query != null)
{
data = "select * from products_tbl where product_name like '%"+query+"%' or product_price like '%"+query+"%'";
}
else
{
data = "select * from products_tbl";
}
rs = statement.executeQuery(data);
while (rs.next()) {
%>
<tr>
<td><%=rs.getString("id")%></td>
<td> <input type="checkbox" name="products" value ="<%=rs.getString("id")%>" /> </td>
<td><%=rs.getString("product_name")%></td>
<td><%=rs.getString("product_price")%></td>
<td class="text-center" width="250">
<a href='edit.jsp?u=<%=rs.getString("id")%>' class="btn btn-warning">Edit</a>
<a href='delete.jsp?d=<%=rs.getString("id")%>' class="btn btn-danger">Delete</a>
</td>
</tr>
<%
}
%>
</tbody>
</table>
<a href='order.jsp' class="btn btn-success">Order</a>
在接收结果的同时,您需要使用以下内容:
<%
String products[] = request.getParameterValues("products");
if (products!= null && products.length != 0) {
out.println("You have selected: ");
for (int i = 0; i < products.length; i++) {
out.println(products[i]);
}
}
%>
希望这对您有所帮助!! 快乐编码:)