我制作了一个下拉列表,内容来自数据库,我可以在下拉列表中获取ID和名称以及显示名称。但我想在下一页只存储id:请参阅下面的代码:
<%
try{
// Register JDBC driver
Class.forName("com.mysql.jdbc.Driver");
// Open a connection
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/infoshare", "root", "");
// Execute SQL query
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM department WHERE status='A'");
%>
<select name="departments" style="padding:2px;">
<option value ="000" disabled selected> Select Department</option>
<%
while (rs.next()){ %>
<option value=<%=rs.getInt("Department_id") %> > <%=rs.getString("Department_name") %> </option>
<% }%>
</select>
<%
// Clean-up environment
rs.close();
stmt.close();
conn.close();
}catch(SQLException se){
//Handle errors for JDBC
se.printStackTrace();
}catch(Exception e){
//Handle errors for Class.forName
e.printStackTrace();
}
%>
提交表单后,我可以获取名称但无法获取标签的值,我想要选项标签的值,我该如何获得该值?
答案 0 :(得分:0)
在我回答您的问题以从Dropdown获取所选值之前,请在代码中使用finally来关闭所有连接,语句结果集等。
要获取所选值,您必须修改您的选择标记,如下所示,并应在JSP中创建一个隐藏字段:
<select id="name" name="name" onchange="updateName(value)">
<input type="hidden" name="selectedText" id="selectedText" value=""/>
你必须调用javascript调用来获取所选文本并在隐藏参数中分配所选值,如。
document.getElemetById("selectedText").value = selectedText;
为了更好地理解,请参考: http://jsfiddle.net/robertrozas/y8e4B/