这是我的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>
答案 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)。要在控制台上打印,您可以使用正确的代码。只能正确关闭你的标签。