如何设置JSP中下拉选择更改的值

时间:2013-07-22 05:17:43

标签: java javascript jquery html jsp

这是我的index.jsp代码。我想要它,以便当我在下拉菜单中选择一个选项时,应打印出该值,并且还应设置该值。例如,如果我们选择“grape”,那么它应该打印Grapes并将值设置为Grapes。我尝试了很多东西但却无法做到。

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Insert title here</title>
</head>
<body>
    <form method="post" action="index.jsp" name="productForm">
    <select name="colour" onchange="document.productForm.submit();">
        <option value="dropdown">Pls select one
        <option value="apple">Apple
        <option value="oragne">Orange
        <option value="grapes">Grapes
    </select>
    <input type="hidden" name="dropdown" id="dropdown">
    <input type="submit" value="click" name="dropdown" id="dropdown">
    <form>
    <%
        String colour = request.getParameter("colour");
        out.println(colour);
    %>
</body>
</html>

3 个答案:

答案 0 :(得分:3)

试试这个让我知道..

<script type="text/javascript">
function setValue(){
document.getElementById("dropdown").value=document.getElementById("colour").value;
document.productForm.submit();
return true;
}
</script>

<form method="post" action="index.jsp" name="productForm">
    <select id="colour" name="colour" onchange="return setValue();">
        <option value="dropdown">Pls select one
        <option value="apple">Apple
        <option value="oragne">Orange
        <option value="grapes">Grapes
    </select>
    <input type="hidden" name="dropdown" id="dropdown">
    <input type="submit" value="click" name="btn_dropdown">
    <form>

  <%
        String colour = request.getParameter("colour").toString();
        out.println(colour);
   %>

答案 1 :(得分:1)

form且所有option代码均未关闭

正确标记option

的示例
<option value="apple">Apple</option>

您的更新代码应该是这样的:

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
        <title>Insert title here</title>
    </head>
    <body>
        <form method="post" action="index.jsp" name="productForm">
            <select name="colour" id="dropdown">
                <option value="dropdown">Pls select one</option>
                <option value="apple">Apple</option>
                <option value="oragne">Orange</option>
                <option value="grapes">Grapes</option>
            </select>
            <input type="submit" value="click">
        </form>
        <%
        String colour = request.getParameter("colour");
        out.println(colour);
        %>
        <script>
        document.getElementById("dropdown").value = '<% out.print(colour); %>';
        </script>
    </body>
</html>

答案 2 :(得分:0)

首先,如果你想将值设置为值变化的下拉列表,那么它本身就是这样做的。但是如果你想将选择的值设置为session,那么它本身就是你所要做的就是在你处理请求的下一页或后端使用request.getParameter(color)。要在控制台上打印,您可以使用正确的代码。只能正确关闭你的标签。