在表格输入一个ID,然后自动根据ID在数据库中查找是否有对应name
这是javascript部分,利用ajax验证
$(document).ready(function() { $("#client_id").blur(function(){ $.ajax({ type:‘POST‘, url:‘servlet/valClientServlet‘, //这是后台servlet的方法 data:‘client_id=‘+$("#client_id").val(), //client_id 是输入ID 的文本框的id属性 beforeSend: function(){ $("#progress").html("aaa");}, complete: function(XMLHttpRequest,textStatus){ //这是在执行前会有短暂的sleep,方法在servlet实现 $("#progress").html("");}, success:function(msg){ if(msg==‘false‘){ //判断为false,利用alert弹出框提示没有,并使显示name的div里面为空 alert("没有此人"); $("#client_name").html(""); }else{ //判断为true,在div中显示name的值,decodeURI()是防止乱码的 $("#client_name").html(decodeURI(msg)); } } }); }); });
这是servlet内容
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); request.setCharacterEncoding("utf-8"); response.setCharacterEncoding("utf-8"); String client_id=request.getParameter("client_id"); try { Thread.sleep(1000); //此行就是执行前的sleep,括号内数字单位是毫秒 } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } //调用services去数据库查找是否有相同用户名 BackDAO dao=new BackDAO(); E_Client eclient=dao.findById(client_id); //findById()方法 就是一个包含SQL查询语句的方法,向数据库查询 // boolean isSelect=dao.selectClient(client_id); if(eclient!=null){ out.print(URLEncoder.encode(eclient.getClient_name(), "utf-8")); //在ajax里的防止乱码的decodeURI()方法,这里还需要添加 }else{ out.print(false); } out.flush(); out.close(); }
AJAX验证此ID是否有对应的name,布布扣,bubuko.com
原文:http://www.cnblogs.com/robben/p/3928298.html