做一个可输入的下拉框,能动态检索数据库
如题
做一个可输入的下拉框,能动态检索数据库
最好不要覆盖的,还有动态检索数据库的javascript怎么写比较好一些。
希望大家指点,谢谢。
[解决办法]
这个下拉框的选项来自于数据库某表 某列?
根据数据库数据变化而变化?
ajax取数据 jquery或js放到下拉框
[解决办法]
//servlet得到列表
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=gbk");
String userName=request.getParameter("userName");
List<String> userList=new UserBizImpl().getUserList(userName);
PrintWriter out =response.getWriter();
System.out.println("userName:"+userName);
for(String uName :userList)
{
out.print(uName+"<br>");}
out.flush();
out.close();
}
//js
var xmlHttpRequest;
//createXmlHttpRequest函数
function createXmlHttpRequest()
{
//ie6以上或其他浏览器
if(window.XMLHttpRequest)
{
return new XMLHttpRequest();
}
else if(window.ActiveXObject)//ie6以下
{
return new ActiveXObject("Microsoft.XMLHTTP");
}
}
function demo()
{
//1.得到userName
var userName=document.getElementById("userName").value;
if(userName=="")
{
document.getElementById("divMsg").innerHTML="不能为空";
}
else
{
xmlHttpRequest=createXmlHttpRequest();
var url="userServlet";
xmlHttpRequest.onreadystatechange=callback;
//5.open,send
xmlHttpRequest.open("post",url,true);
xmlHttpRequest.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlHttpRequest.send("userName="+userName);
}
}
function callback()
{
if(xmlHttpRequest.readyState==4 &&
xmlHttpRequest.status==200)
{
document.getElementById("divMsg").innerHTML=xmlHttpRequest.responseText;
}
}
[解决办法]
当下拉框的值改变触发一个事件,用ajax去后台去除数据以输入汉字开头的数据,用josn并返回给页面,页面清除下拉列表,然后把数据填充进去