【问题标题】:request.getParameter not returning correct value from HTML formrequest.getParameter 没有从 HTML 表单返回正确的值
【发布时间】:2015-11-17 18:20:43
【问题描述】:

我正在使用带有 doPost() 方法的 servlet,我正在尝试使用 request.getParameter 将带有 post 方法的 html 表单的值传递给我的 servlet。

这是我的 HTML 代码:

<html>
<body>
<form method="Post" action="selectValue">
<select name = "test">
    <option value ="Balboa"> ex1  </option>
    <option value ="Arnold"> ex2 </option>

</select>
<input type="submit"/>
</form>
</body>
</html>

这是我的 doPost 方法的 request.getParameter()(一切正常,只是得到了错误的值,所以我只会发布给我错误结果的部分):

String temp = request.getParameter("test");
out.println(temp) //gives "send" as a value on the servlet page

当运行这个 doPost 方法时,temp 被赋予“Send”而不是“Balboa”或“Arnold”的值。我是不是做错了什么?

【问题讨论】:

  • 可能有别的东西正在设置 test=send。您可以尝试在“请求”中打印出所有参数吗?
  • 试试String temp = request.getParameter("test");
  • 当我尝试将名称放入表单时,结果为“null”
  • @AmeyJadiye 抱歉更正了问题上的错误。这里只是一个错字。
  • 检查表单的操作 url (selectValue) 是否映射到正确的 servlet 类。

标签: java html servlets request


【解决方案1】:

将您的 HTML 代码更改为:

<select id ="test" name = "test">

select标签的id属性主要是DOM使用,name属性是指定表单数据的key。

然后使用request.getParameter("test"),你会得到正确的值。 getParameter 用于从表单数据和 URL 查询字符串中检索参数。

【讨论】:

  • 这为我解决了一切问题!谢谢!
猜你喜欢
  • 2014-11-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-21
  • 1970-01-01
  • 2014-07-15
  • 1970-01-01
相关资源
最近更新 更多