从select onchange调用servlet并传递值

时间:2015-06-28 12:46:34

标签: javascript html servlets

我尝试调用我的servlet GET方法,并使用select从html onChange传递值。到目前为止,我有类似的东西。

<form name="form1" action="http://localhost:8080/MainServlet/main" method="GET">
<input type=hidden name="action" value="checking">
<div class="select123" onchange="javascript:document.form1.submit();">
<select>
    <option selected="" value=""></option>
    <option value="">1</option>
    <option value="">2</option>
    <option value="">3</option>
    <option value="">4</option>
</select>
</div>
<br><br>
</form>

我能够访问servlet,但是当我尝试读取select123值时,它为空。 我该如何纠正?

2 个答案:

答案 0 :(得分:4)

代码中的一些问题。
1.选项值属性中没有值全为空。那里有一些价值。
2. html应该是这样的: -

<div>
<select name="select123" onchange="javascript:document.form1.submit();">
    <option selected="" value=""></option>
    <option value="">1</option>
    <option value="">2</option>
    <option value="">3</option>
    <option value="">4</option>
</select>
</div>

div中没有​​变化,class属性不能用于访问已定义name属性的servlet中的值。 您可以访问servlet中的值,如下所示

String selectedValue = request.getParameter("select123");

答案 1 :(得分:2)

  

我该如何纠正?

修改代码

<form name="form1" action="/MainServlet/main" method="POST">
<input type="hidden" name="action" value="checking">
<div class="select123">
<select name="select123" onchange="document.form1.submit();">
    <option selected="selected" value=""></option>
    <option value="">1</option>
    <option value="">2</option>
    <option value="">3</option>
    <option value="">4</option>
</select>
</div>
<br><br>
</form>