標籤:style blog http color java os io for
在表格輸入一個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(); }