试图获取Java中选项字段的值

时间:2016-07-29 12:58:14

标签: java html spring jsp

我在java中获取select的值时遇到了一些问题。

这是我的java控制器里面的代码:

String topicName = request.getParameter("select_topic");

这是我的JSP文件中的代码:

<select class="topic-form" name="select_topic" style="height:40px; " id="select_topic">
    <option>Select topic</option>
</select>

我正在为动态选择生成选项,然后尝试在java中获取所选选项。问题是我试图看看java中的代码返回什么,它是一个“null”值。我还让jsp返回控制台内的值,以检查值是否正确,它们是否正确。所以我能想到的是,topicName不会以某种方式获取该值。我还检查了函数是否被调用,它确实。

1 个答案:

答案 0 :(得分:1)

假设您的JSP页面名为“topic.jsp”:

  1. 确保您的&lt; form&gt; tag有一个动作参数(例如action =“topic.jsp”)
  2. 确保每个&lt;选项&gt;标签有价值参数。 (ex&lt; option value =“ - 1”&gt;选择&lt; / option&gt;
  3. 示例:

    <form action="topic.jsp" method="get">
        <select class="topic-form" name="select_topic" id="select_topic">
            <option value="-1">Select topic</option>
            <option value="1">Topic 1</option>
        </select>
        <input type="submit" name="submit" value="Submit" />
    </form>
    

    调试:

    • 将表单方法设置为GET很有帮助,因此请求参数将包含在地址栏中。
    • HttpRequest对象有几个有用的方法:
      • request.getQueryString(); // if(request.getQueryString()!= null)System.out.println(“QS:”+ request.getQueryString());
      • request.getParameterMap()// Map&lt; String,String []&gt; (Key =表单对象名称,Value [] =各自的值)