如何使用Servlet和JSP提取行值?

玫瑰

我是JSP的新手。我创建了一个在tomcat服务器上运行的JSP文件。我已经在程序中指定了目录位置。我的程序显示该目录中的所有文件,并将结果显示在表中,并在文件名后创建一个删除按钮。我的程序如下(JSP文件):

<form method="post" action='FileDisplayURL' >
    <h2>Current Collection</h2>
    <table width="100%" border="1">

        <%
          File folder = new File("C:/Apps/eclipse-jee-mars-2-win32-x86_64/eclipse");
          File[] listOfFiles = folder.listFiles();
          for (int i = 0; i < listOfFiles.length; i++) {
        %>
        <tr >
            <%
              if (listOfFiles[i].isFile()) {
            %>
            <td><%=listOfFiles[i].getName()%></td>
            <td><input type="submit" value="delete" name="filename"></td>
            <%
              }
            %>
        </tr>
        <%
          }
        %>
    </table>

</form>

这是我的servlet:

@WebServlet("/FileDisplayURL")
public class FileDisplay extends HttpServlet {
  private static final long serialVersionUID = 1L;

  protected void doPost(HttpServletRequest request,
      HttpServletResponse response) throws ServletException, IOException {

    response.setContentType("text/html");

    String deleteFileName = request.getParameter("filename");
    System.out.println("you clicked on " + deleteFileName);

  }

}

这是我的首页的样子:

在此处输入图片说明

我在用户单击删除时获取文件名时遇到问题。

当我在tomcat上运行程序时,终端中的输出如下所示:

INFO: Server startup in 1076 ms
you clicked on delete

“您单击删除”不显示所单击文件的名称。我是Servlet和JSP的新手。我可能缺少明显的东西。任何帮助,将不胜感激。

用手87

这是HTML错误,按钮不能有值(无论如何您都不会添加值),您应该创建一个隐藏的输入并将文件名放在此处:

<input type="hidden" value="<%=listOfFiles[i].getName()%>" name="filename"/>

编辑:

我没有意识到您只有一种形式,每行都需要一个单独的形式,因为如果多个输入具有相同的名称,则servlet不知道要输入什么值。因此,您的视图应具有:

<h2>Current Collection</h2>
<table width="100%" border="1">

    <%
      File folder = new File("C:/Apps/eclipse-jee-mars-2-win32-x86_64/eclipse");
      File[] listOfFiles = folder.listFiles();
      for (int i = 0; i < listOfFiles.length; i++) {
    %>
    <tr >
        <%
          if (listOfFiles[i].isFile()) {
        %>
        <td><%=listOfFiles[i].getName()%></td>
        <td>
            <form method="post" action='FileDisplayURL' >
                <input type="submit" value="delete">
                <input type="hidden" value="<%=listOfFiles[i].getName()%>" name="filename"/>
            </form>
        </td>
        <%
          }
        %>
    </tr>
    <%
      }
    %>
</table>

编辑2:

只是为了澄清您的错误:单击发送按钮时,浏览器会准备将添加到主体的键值列表的请求添加到主体,该键值列表包含已激活表单内的所有参数(如果您使用一个包含多个名称相同的字段的服务器的表单)无法猜测哪个是正确的值:

Body:
filename=a
filename=b
filename=c
filename=d

应该选择哪个值?因此,您需要一种每个名称仅包含一个值的表单(或列表的方括号)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在servlet中使用jsp值?

来自分类Dev

如何使用jstl将值从jsp传递到servlet

来自分类Dev

如何使用jsp和servlet创建模板

来自分类Dev

如何使用jsp和servlet创建模板

来自分类Dev

如何使用JSP Servlet生成和下载Excel报告

来自分类Dev

如何使用保留在jsp中的值来获取servlet对jsp的响应

来自分类Dev

使用JSP和Servlet Java的消息提示

来自分类Dev

使用JSP和Servlet的错误404

来自分类Dev

如何将带有选中复选框的表行值从jsp获取到servlet

来自分类Dev

如何使用JSP和Servlet从String和List <String>的映射动态生成表?

来自分类Dev

使用mapReduce和hadoop提取包含特定值的行

来自分类Dev

如何使用ajax从servlet提取数据?

来自分类Dev

使用Servlet和JSP在数据库中插入之前如何获得用户确认?

来自分类Dev

如何使用servlet和JSP将数据保存在Java类中定义的变量中?

来自分类Dev

如何使用jsp和servlet更新数据库中的多个记录

来自分类Dev

如何将JSP中获取的值传递给Servlet?

来自分类Dev

Jsp如何将选定的值传递给servlet?

来自分类Dev

在JSP中使用JSTL标记从servlet打印数组值

来自分类Dev

如何从jsp调用servlet

来自分类Dev

提取行和列的最大值

来自分类Dev

使用Maven,Servlet,JSP和Java构建失败

来自分类Dev

无法使用Servlet和JSP更新表中的特定记录

来自分类Dev

使用JSP和Servlet显示当前日期

来自分类Dev

首先使用servlet和JSP示例不起作用

来自分类Dev

动态使用Java Bean和Servlet值

来自分类Dev

将值从JSP传递到servlet并将其发送到另一个jsp和servlet

来自分类Dev

如何使用条件提取行

来自分类Dev

逻辑错误-JSP和Servlet

来自分类Dev

如何使用ajax调用从servlet到jsp获取arraylist数据

Related 相关文章

热门标签

归档