我编写了一个动态填充SQL数据库下拉列表的代码。 接下来,我需要根据用户实时选择(无按钮)更改页面内容,可能显示另一个标签,甚至显示另一个下拉列表,该列表也可以从SQL DB中获取值,具体取决于之前的选择等等.. 这是我的代码
<%@ page import="java.sql.*" %>
<%ResultSet resultset = null;
Connection conn;%>
<HTML>
<%
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
conn = DriverManager.getConnection("jdbc:sqlserver://DESKTOP-O708F3G\\SQLEXPRESS;databaseName=master",
"user", "pswd");
Statement statement = conn.createStatement();
resultset = statement.executeQuery("select * from RTable");
%>
<h1> Drop down list</h1>
<select name="projectname">
<% while (resultset.next()) {%>
<option><%= resultset.getString(2)%></option>
<% } %>
</select>
<%
} catch (Exception e) {
out.println("error"+e);
}
%>
</HTML>
完成所有选择后,我将显示一个“提交”按钮,将所选数据发送到后端servlet(我知道如果按钮在那里,该怎么做)。
答案 0 :(得分:0)
您可以编写以下javascript函数并在<select>
元素的onchange事件中调用它:
<p id="demo"></p>
<script>
function myFunction() {
var x = document.getElementById("mySelect").value;
document.getElementById("demo").innerHTML = "You selected: " + x;
}
</script>
//Your JSP Code
<select name="projectname" id="mySelect" onchange="myFunction()">
<% while (resultset.next()) {%>
<option value="<%= resultset.getString(2)%>"><%= resultset.getString(2)%></option>
<% } %>
</select>
请检查<option>
的值属性的代码,它可能是错误的;但其他代码将正常工作。我已为<select>
代码添加了'id'和'onchange'属性。