有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java无法从selectbox获取值到servlet

尝试将选中的selectbox值(一次打开)与textbox值一起提交到servlet;以下是我的代码(jsp):

<script type="text/javascript">
function search(){
document.f2.action="/InfoUser/SearchBox";
document.f2.submit();
}
</script>

<form name="f2">
<div align="right">
<select id="select" name="select" style="color:#2D7EE7">
<option> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ----------- </option>
<option value="a">A</option>
<option value="b">B</option>
<option value="c">C</option>
</select> 
<input type="text" name="search" style="color:#2D7EE7">
<input type="submit" value="Search" onclick="search()">
</div>
</form>

在servlet中:我已经写了

String[] select = request.getParameterValues("select");
String search = request.getParameter("search");

无法获取servlet中的值,我是否缺少一些javascript/jquery脚本来获取servlet中的值&;如何在^{的帮助下使用它。如果我出了问题,是否需要进行任何纠正。。。。。欢迎随时发表评论


共 (1) 个答案

  1. # 1 楼答案

    尝试更改您的表单:

    <form action="/InfoUser/SearchBox">
        <div align="right">
            <select id="select" name="select" style="color:#2D7EE7">
                <option> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;      -</option>
                <option value="a">A</option>
                <option value="b">B</option>
                <option value="c">C</option>
            </select>
            <input type="text" name="search" style="color:#2D7EE7">
            <input type="submit" value="Search">
        </div>
    </form>
    

    或者:

    <script type="text/javascript">
        function search(){
            document.f2.action="/InfoUser/SearchBox";
            document.f2.submit();
        }
    </script>
    
    <form name="f2">
        <div align="right">
            <select id="select" name="select" style="color:#2D7EE7">
                <option> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;      - </option>
                <option value="a">A</option>
                <option value="b">B</option>
                <option value="c">C</option>
            </select>
            <input type="text" name="search" style="color:#2D7EE7">
            <input type="submit" value="Search" onclick="search()">
        </div>
    </form>
    

    您缺少表单的名称,并且在javascript中试图对不存在的表单设置操作

    在servlet中,您必须执行以下操作:

    String select = request.getParameter("select");
    String search = request.getParameter("search");
    

    您将无法使用:String[] select = request.getParameterValues("select");,除非您的select元素将具有multiple="true"