如何将下拉值发送到 servlet 而不是选项文本
How to send dropdown value to servlet NOT the option text
我有包含选项和值的下拉菜单。我可以通过 servlet 中的下拉列表名称获取选项值,但是如何在 servlet 中获取下拉列表 "value"。在屏幕截图中,我暂时连接了选项,但我想将值存储在 servlet 的变量中。
请帮助:
HTML:
<input type="text" name="taxiDropdown" id= "taxiDropdown" placeholder="Search taxi...">
</div>
<div class="scrolling menu">
<%
List eList = (ArrayList) session.getAttribute("taxiInfo");
%>
<%
for (int i = 0; i < eList.size(); i++) {
%>
<div class="item" data-value="<%=((TaxiInfo) eList.get(i)).getID()%>">
<div class="ui green empty circular label"></div>
<%=((TaxiInfo) eList.get(i)).getTaxiPlate() +" "+ ((TaxiInfo) eList.get(i)).getID() %>
</div>
<%
}
%>
</div>
</div>
Servlet:
String val = request.getParameter("taxiDropdown");
(在 "val" 中,我想存储下拉列表的值而不是选项文本)
在 JSP 你应该有这样的东西:
<form method="post">
<select name="taxiDropdown" id="taxiDropdown">
<%
List<TaxiInfo> eList = (List<TaxiInfo>) request.getAttribute("taxiInfo");
for (TaxiInfo taxiInfo : eList) {
%>
<option name="<%=taxiInfo.getTaxiPlate()%>" value="<%=taxiInfo.getID()%>"><%=taxiInfo.getTaxiPlate()%></option>
<%
}
%>
</select>
<input type="submit" />
</form>
然后在controller/servlet你会收到TaxiInfo的id:
String val = request.getParameter("taxiDropdown");
System.out.println(val);
或者在您的情况下,您应该使用具有所需值的 javascript 设置隐藏输入。
在 html 中添加了这段代码:
将下拉选择的值移动到隐藏的文本框
<script type='text/javascript'>
$(function() {
$('#driverdp').change(function() { <-- this is my dropdown -->
var x = $(this).val();
$('#driverid').val(x); <-- this is my textbox -->
});
});
</script>
小服务程序:
获取servlet中隐藏文本的值
String text= request.getParameter("driverId");
希望对大家有所帮助
我有包含选项和值的下拉菜单。我可以通过 servlet 中的下拉列表名称获取选项值,但是如何在 servlet 中获取下拉列表 "value"。在屏幕截图中,我暂时连接了选项,但我想将值存储在 servlet 的变量中。 请帮助:
HTML:
<input type="text" name="taxiDropdown" id= "taxiDropdown" placeholder="Search taxi...">
</div>
<div class="scrolling menu">
<%
List eList = (ArrayList) session.getAttribute("taxiInfo");
%>
<%
for (int i = 0; i < eList.size(); i++) {
%>
<div class="item" data-value="<%=((TaxiInfo) eList.get(i)).getID()%>">
<div class="ui green empty circular label"></div>
<%=((TaxiInfo) eList.get(i)).getTaxiPlate() +" "+ ((TaxiInfo) eList.get(i)).getID() %>
</div>
<%
}
%>
</div>
</div>
Servlet:
String val = request.getParameter("taxiDropdown");
(在 "val" 中,我想存储下拉列表的值而不是选项文本)
在 JSP 你应该有这样的东西:
<form method="post">
<select name="taxiDropdown" id="taxiDropdown">
<%
List<TaxiInfo> eList = (List<TaxiInfo>) request.getAttribute("taxiInfo");
for (TaxiInfo taxiInfo : eList) {
%>
<option name="<%=taxiInfo.getTaxiPlate()%>" value="<%=taxiInfo.getID()%>"><%=taxiInfo.getTaxiPlate()%></option>
<%
}
%>
</select>
<input type="submit" />
</form>
然后在controller/servlet你会收到TaxiInfo的id:
String val = request.getParameter("taxiDropdown");
System.out.println(val);
或者在您的情况下,您应该使用具有所需值的 javascript 设置隐藏输入。
在 html 中添加了这段代码:
将下拉选择的值移动到隐藏的文本框
<script type='text/javascript'>
$(function() {
$('#driverdp').change(function() { <-- this is my dropdown -->
var x = $(this).val();
$('#driverid').val(x); <-- this is my textbox -->
});
});
</script>
小服务程序: 获取servlet中隐藏文本的值
String text= request.getParameter("driverId");
希望对大家有所帮助