以下是在输入框输入数据时,自动提示与输入相关的数据,数据从数据库中查询的:
【HTML部分】
<div class="itempanel"> <div class="floatleft title">退货配送人:</div> <div class="floatleft editor"><input type="text" id="username" name="username" onkeyup="find_user('username')" value=""></div> <input type="hidden" id="usernameid" name="usernameid" value=""/> <div id="usernameDiv" style="display: none;position: fixed;354px"> <select multiple="multiple" onclick="selected('username')" id="usernameShow" name="usernameShow" style=" 401px; margin-left: 134px; margin-top: 24px;" onmouseout="isClick('username')"> </select> </div> <div class="floatleft message">请在此输入退货配送人姓名!</div> <div class="clear"></div> </div> <div class="itempanel"> <div class="floatleft title">退货配送人电话:</div> <div class="floatleft editor"><input type="text" id="phone" name="phone" /></div> <div class="floatleft message">请在此输入退货配送人电话!</div> <div class="clear"></div> </div>
【JavaScript部分】
//请求数据-----根据输入的信息查找管理员信息 function find_user(name){ $("#"+name+"id").val(''); var userName=document.getElementById(name).value; $.ajax({ url:'<%=basePath%>user/selbymanagement', type:'POST', data:'username='+userName, success:function(data) { document.getElementById(name+"Div").style.display="block"; var jsonData = eval('(' + decodeURIComponent(data) + ')'); console.log(jsonData); var userlist=jsonData.data; document.getElementById(name+"Show").innerHTML = ""; for(var i =0;i<userlist.length;i++){ $('#'+name+'Show').append('<option value="'+userlist[i].phone+'">'+userlist[i].nickname+'</option>'); } }, error: function(data, error, msg) { console.log(data); console.log(error); console.log(msg); } }); } //选择 function selected(name){ var userphone=$("#"+name+"Show option:selected").val(); var username=$("#"+name+"Show option:selected").text(); $("#"+name+"id").val(userphone); $("#"+name).val(username); document.getElementById("phone").value=userphone; showNone(name); } //判断是否是在显示结果之外点击 function isClick(name){ document.onclick = function(e){ var id=$("#"+name+"id").val(); if(id==null||id==""||id==undefined){ $("#"+name).val(''); } showNone(name); } } //失去焦点事件 function showNone(showName){ document.getElementById(showName+"Div").style.display="none"; }
【效果图】