将选定项从下拉列表传递到doPost方法中的servlet?

时间:2014-06-28 18:19:04

标签: java jsp servlets

我正在使用Servlet和JSP。我有一个表单,我有一个下拉列表,动态填充。现在,一旦我从该下拉列表中选择了任何项目,我想在servlet中的doPost方法中打印出所选项目。通常,我需要将选定的下拉列表传递给servlet。

下面是我的doPost方法 -

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

    System.out.println("hello");
    // somehow this prints out null
    System.out.println(request.getParameter("accounts"));

}

以下是我的jsp页面 -

<form id="form_delete" method="post" action="/dataservlet/">
    <h3> Delete Existing Item</h3>

    <div class="line"><label for="accounts">Choose an existing item : </label> <select id="accounts"></select></div>

    <div class="line submit"><input type="submit" value="Delete Item"/></div>

</form> 

从上面的JSP页面中,我在下拉列表中选择的任何项目都没有被打印出来。我做错了什么?

1 个答案:

答案 0 :(得分:2)

使用name属性也将成为请求参数的一部分。

应该是

<select name="accounts">

而不是

<select id="accounts">

  

您似乎期望HTML输入元素的id属性已作为请求参数名称发送。这是错的。它是作为请求参数名称发送的名称属性。 (Read more)