- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试制作一个页面,您可以在其中搜索演出数据库,如果您按 Enter,它会显示所有演出,并且在每次演出之后您都有按钮编辑和删除,我将在其中添加正确的功能。
到目前为止,我正在测试我按下的是哪个按钮的打印输出,并查看 ID 字段是否被正确传输。如果我搜索特定演出,然后在该结果上单击其中一个按钮,它会显示正确的 EDIT 3、DELETE 2
例如,取决于它是哪个演出。但是,当整个页面显示所有演出时,我在任何演出上按下一个按钮,我总是打印 EDIT 1,DELETE 1,所以它总是将 ID 设置为 1,无论我点击哪个。
<%
if(request.getAttribute("gigs")==null){
response.sendRedirect("searchGig");
return;
}
%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ page import="bean.Gig"%>
<jsp:useBean id="gigs" type="java.util.ArrayList<Gig>" scope="request" />
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Gigplanner</title>
<link href="gigplanner.css" rel="stylesheet">
</head>
<body>
<form id="msform" action="searchGig" method="post">
<!-- progressbar -->
<ul id="progressbar">
<li><a href="index.jsp">Front Page</a></li>
<li><a href="addGig.jsp">Add Gig</a></li>
<li class="active"><a href="searchGig.jsp">Search Gigs</a></li>
<li><a href="settings.php">Settings</a></li>
</ul>
<fieldset>
Search Gig:
<input type="text" name="hakusana" value="" >
<input type="submit" class="show-button" value="Search" >
<br>
<div class="showgig">
<%
for(int i=0;i<gigs.size();i++){
out.print("<table>");
out.print("<tr><td>Title:");
out.print("<td>" +(gigs.get(i).getTitle()+ "</td>"));
out.print("<tr><td>Venue:");
out.print("<td>" +(gigs.get(i).getVenue()+ "</td>"));
out.print("<tr><td>Date:");
out.print("<td>" +(gigs.get(i).getDate()+ "</td>"));
out.print("<tr><td>Time:");
out.print("<td>" +(gigs.get(i).getTime()+ "</td>"));
out.print("<tr><td>Country:");
out.print("<td>" +(gigs.get(i).getCountry()+ "</td>"));
out.print("<tr><td>Address:");
out.print("<td>" +(gigs.get(i).getAddress()+ "</td>"));
out.print("<tr><td>Postcode:");
out.print("<td>" +(gigs.get(i).getPostcode()+ "</td>"));
out.print("<tr><td>City:");
out.print("<td>" +(gigs.get(i).getCity()+ "</td>"));
out.print("<tr><td>Description:");
out.print("<td>" +(gigs.get(i).getDescription()+ "</td>"));
out.print("<input type='hidden' name='id' value="+(gigs.get(i).getId()+">"));
out.print("<tr><td><input type='submit' name='act' class='show-button' value='edit'></td>");
out.print("<td><input type='submit' name='act' class='show-button' value='delete'></td>");
out.print("</tr></table><br>");
}
String act = request.getParameter("act");
String id = request.getParameter("id");
if (act == null) {
//no button has been selected
} else if (act.equals("delete")) {
//delete button was pressed
out.print("DELETE " + Long.valueOf(id));
} else if (act.equals("edit")) {
//edit button was pressed
out.print("EDIT " + Long.valueOf(id));
} else {
//something else
}
%>
</div>
</fieldset>
</form>
<br />
</body>
</html>
最佳答案
请求对象的 getParameter()
方法依赖于 html 元素的名称,该名称可能对许多 html 元素通用。
在您的情况下,该方法会获取第一个具有与其关联的名称的元素,而不考虑其他元素。
当您搜索特定演出时,页面上可能只有一个元素,因此无法弄错 ID,而当所有这些元素都在页面上时,您将得不到预期的结果。
您应该使用 getParameterValues()
,然后找到一种方法来检索您感兴趣的特定值(例如,通过使用与每个演出关联的复选框,每个都有相同的名称属性但不同的值)或为每个演出创建一个 form
元素。
关于java - 准备用于处理数据库条目的 JSP 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37102670/
我一直在试图找出为什么这会给我一个错误: PREPARE test FROM 'SELECT t.blah FROM (SELECT ? AS blah) t;'; ERROR 1054 (42S22
我想了解 Go 中的 channel 。我读过默认情况下发送和接收 block ,直到发送方和接收方都准备好。但是我们如何确定发送方和接收方的准备情况。 例如在下面的代码中 package main
大部分的pytorch入门教程,都是使用torchvision里面的数据进行训练和测试。如果我们是自己的图片数据,又该怎么做呢? 1、我的数据 我在学习的时候,使用的是fashion-mnis
在我的 Storyboard中,controller1 有 natigationController 和 segues 到 controller 2。奇怪的是 Segue 工作正常但是 overrid
我正在尝试使用Openshift在线从我的仓库中放入一些代码。 我的构建编译正常,但是部署失败: error: update acceptor rejected nodejs-mongo-persis
已结束。此问题不符合 Stack Overflow guidelines .它目前不接受答案。 要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于 Stack Overflow 来说是无关紧要的,
我有一个每晚运行的存储过程。 它从链接服务器中提取一些数据并将其插入到运行 sql 代理作业的服务器上的表中。在运行 INSERT 语句之前,该过程检查链接服务器上的数据库是否联机 (STATE =
我对 PDO 准备好的语句比较陌生。 我忍不住觉得必须有一种更简单、更整洁的方法来执行以下操作:我无论如何都将所有内容加载到一个数组中,然后必须将整个内容重写为一组 ':blah '=>$found[
我正在准备一个 pandas 数据框,用于在 R 的 ggplot2 中绘制带有误差条的图,这需要计算列的统计数据。误差条需要最小值(平均值 - 标准偏差)和最大值(平均值+标准差)。我使用 grou
我的 prepareForSegue 方法没有将数据传递到目标 View Controller 。 var buttonsDictionary = [Int: UIButton]() func cre
需要帮助来完成这个简单的任务。该 sp 应该提供一个结果集,并将从 MS-Access-Database 报告目的中调用。 表名可变,但以数字 (lsid) 结尾。使用串联。max_prepared_
我正在为我工作的小型企业创建销售订单表单。我有一个表单连接到数据库以获取下拉菜单,然后连接到文本框以在需要时添加新数据。如果前面的部分中的所有数据框均已填写,还会出现另外四个部分。 链接到数据库的
以下代码: class Database { (...) public function query($query){ $this->stmt = $this->dbh
我正在开展一个学校项目,涉及一个具有数据库集成的网站。目前正致力于通过它向网站添加新内容(文本、标题、图像)。我已经可以通过网站向数据库添加新用户,但由于某种原因,相同的代码和逻辑不适用于内容。 我注
我如何mysqli::stmt->bind_param在mysql中被视为NULL的东西? 我目前正在使用 $stmt->bind_param('s', 'NULL'); 最佳答案 bind_para
我在此处运行准备 stmt 时遇到语法错误。我尝试手动执行 @c 中的查询并且它有效。不知道为什么 stmt 会给出这个错误。这是我正在使用的代码。 SET @i=24; SET @Bill_mont
已关闭。这个问题是 not reproducible or was caused by typos 。目前不接受答案。 这个问题是由拼写错误或无法再重现的问题引起的。虽然类似的问题可能是 on-top
我想知道准备好的查询是否与未准备的查询一样安全。下面是两个示例,一个用于 SELECT,一个用于 UPDATE。第一行是未准备的查询,第二行是准备好的查询。 选择示例: $userDetails =
我是 ios 开发的新手,在我尝试做的事情上遇到了障碍。 我的方法中有这段代码,旨在将特定的 NSObject 从这个 View 传递到下一个 View ,但是它总是让我的应用程序崩溃。 -(void
自上次调用 segue 以来,我的 UIButton 类的 statValue 属性已更新,但 segue 仍发送旧的原始值。有没有办法刷新 prepare 函数(如下),以便它发送新值? overr
我是一名优秀的程序员,十分优秀!