尝试将已检查的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> ----------- </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中的值&amp;我如何在JSTL
的帮助下使用它。如果我出错了任何纠正.....随时评论,欢迎。
答案 0 :(得分:3)
尝试更改表单:
<form action="/InfoUser/SearchBox">
<div align="right">
<select id="select" name="select" style="color:#2D7EE7">
<option> -----------</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> ----------- </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");
除非您的select元素包含String[] select = request.getParameterValues("select");
,否则您将无法使用:multiple="true"
。