Java jsp中的自动完成文本框
我有一个包含表值的数据库,如下所示: 数据库:员工信息Java jsp中的自动完成文本框,java,jsp,autocomplete,textbox,Java,Jsp,Autocomplete,Textbox,我有一个包含表值的数据库,如下所示: 数据库:员工信息 staffname Arun Suresh Ankita Tina 我希望用数据库中的值自动完成文本框。例如,如果我在文本框中输入'a',那么它应该只显示数据库中以字母'a'开头的所有名称。现在,它将显示所有包含“a”字母的名称。 即 如果我在文本框中键入“a”,则列表应仅包含“Anikta”和“Arun” 当我在文本框中输入字母“a”时,我当前的列表包含Arun、Anikta和Tina 如何将数
staffname
Arun
Suresh
Ankita
Tina
我希望用数据库中的值自动完成文本框。例如,如果我在文本框中输入'a',那么它应该只显示数据库中以字母'a'开头的所有名称。现在,它将显示所有包含“a”字母的名称。
即
如果我在文本框中键入“a”,则列表应仅包含“Anikta”和“Arun”
当我在文本框中输入字母“a”时,我当前的列表包含Arun、Anikta和Tina
如何将数据库中以文本框中输入的字母开头的值显示为列表
我所尝试的:
<label for="validationDefaultUsername">Authors </label>
<%
Connection con=null;
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","root");
PreparedStatement ps1= con.prepareStatement("select staffname from staff_details ");
ResultSet rs=ps1.executeQuery();
%>
<input type="text" class="form-control" name="prepared_by" id="auth" placeholder="Author " list="a_data" id="auth" required>
<%
%>
<datalist id="a_data">
<%while(rs.next())
{ %>
<option value="<%= rs.getString(1) %> "> </option>
<%
}
%>
</datalist>
</div>
作者
您需要在查询中使用运算符,因此您的代码如下所示:
<%
Connection con=null;
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","root");
PreparedStatement ps1= con.prepareStatement("select staffname from staff_details where staffname LIKE ? ");
ps1.setString(1, search + "%");
//^ passing value to placeholder & here "%"<- can be any letter
ResultSet rs=ps1.executeQuery();
%>
ps1.setString(1,搜索+“%”出现错误;参考我的答案,看看如何做到这一点,我已经参考了您使用ajax和jquery的答案。但它没有调用“List.jsp”。如何在datatable中使用?