如何从jsp中的下拉列表中获取所选值?

时间:2013-01-02 11:32:21

标签: jsp

<select name="item">
<c:forEach items="${combo}" var="id">
    <option value="${id}">${id}</option>
</c:forEach>
</select>

我们如何从上面的下拉列表中获取所选值?

5 个答案:

答案 0 :(得分:26)

我知道这是一个老问题,但正如我在谷歌搜索它是结果中的第一个链接。所以这是jsp解决方案:

<form action="some.jsp">
  <select name="item">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
  </select>
  <input type="submit" value="Submit">
</form>

在some.jsp

request.getParameter("item");

此行将返回所选选项(示例中为:1,2或3)

答案 1 :(得分:3)

使用jquery

$("#item").change(function({
    var x=$(this).val();
});

你的值将在x变量中,在你的jsp中使用这个变量值,就像这个{x}这个语句会给出值

答案 2 :(得分:2)

直接value应该可以正常工作:

var sel = document.getElementsByName('item');
var sv = sel.value;
alert(sv);

代码可能失败的唯一原因是当没有选择项时,selectedIndex返回-1并且代码中断。

答案 3 :(得分:2)

    <%-- if you want to select value from drop-downlist here is jsp code. --%>
    <body>
    <form name="f1" method="get" action="#">
       <select name="clr">
           <option>Red</option>
           <option>Blue</option>   
           <option>Green</option>
           <option>Pink</option>
       </select>
     <input type="submit" name="submit" value="Select Color"/>
    </form>
    <%-- To display selected value from dropdown list. --%>
     <% 
                String s=request.getParameter("clr");
                if (s !=null)
                {
                    out.println("Selected Color is : "+s);
                }
      %>
</body>

答案 4 :(得分:2)

我还有一个额外的选项可以通过id来获取价值:

var idElement = document.getElementById("idName");
var selectedValue = idElement.options[idElement.selectedIndex].value;

这是一个简单的JavaScript解决方案。