重慶分公司,新征程啟航
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
為企業(yè)提供網(wǎng)站建設(shè)、域名注冊、服務(wù)器等服務(wù)
這篇文章給大家介紹使用Ajax怎么驗證用戶名是否存在,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
創(chuàng)新互聯(lián)服務(wù)項目包括石門網(wǎng)站建設(shè)、石門網(wǎng)站制作、石門網(wǎng)頁制作以及石門網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,石門網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到石門省份的部分城市,未來相信會繼續(xù)擴大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
ajax是一種在無需重新加載整個網(wǎng)頁的情況下,能夠更新部分網(wǎng)頁的技術(shù),可以通過在后臺與服務(wù)器進行少量數(shù)據(jù)交換,使網(wǎng)頁實現(xiàn)異步更新。
jsp頁面
用戶名: |
js文件夾下的register.js
//創(chuàng)建對象 function ajaxFunction(){ var xmlHttp; try{ // 適用于IE7+, Firefox, Chrome, Opera, Safari xmlHttp=new XMLHttpRequest(); } catch(e){ try{ //Internet Explorer xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch(e){ try{ // 適用于IE6, IE5 xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } catch(e){ xmlHttp=false; } } } return xmlHttp; } var flag=ture; function CheckUserName(){ //獲取jsp頁面輸入的值 var name=document.getElementById("r_name").value; if(name==""||name==null){ document.getElementById("span01").innerHTML="用戶名不能為空!" flag=false; }else{ //1.創(chuàng)建對象 var request=ajaxFunction(); //2.發(fā)送請求 request.open("POST","/StudyWeb/CheckUserNameServlet",true);//true表示異步提交 //注冊狀態(tài)改變監(jiān)聽,獲取服務(wù)器傳送過來的數(shù)據(jù) request.onreadystatechange=function(){ //readyState==4表示請求已經(jīng)完成,且響應(yīng)已就緒。status==200表示“OK” if(request.readyState==4 && request.status==200){ var data=request.responseText;//獲取CheckUserNameServlet中response中存儲的值 if(data == 1){ document.getElementById("span01").innerHTML="用戶名已存在!" flag=false; }else{ document.getElementById("span01").innerHTML="√" flag=true; } } } //如果是post方式帶數(shù)據(jù),那么這里要添加頭,說明提交的數(shù)據(jù)類型是一個經(jīng)過url編碼的form表單數(shù)據(jù) request.setRequestHeader("Content-type","application/x-www-form-urlencoded;charset=UTF-8"); //帶數(shù)據(jù)過去,在send方法里填寫表單數(shù)據(jù) request.send("name="+name); } return flag; }
后臺StudyWeb項目下的CheckUserNameServlet
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //獲取ajax發(fā)送過來的name值 String r_name=request.getParameter("name"); try { //檢驗是否存在該用戶名 boolean isExist=userService.CheckUserName(r_name); System.out.println("isExist"+isExist); //通知頁面,到底有沒有 if(isExist){ response.getWriter().println(1);//存在用戶名 }else{ response.getWriter().println(2);//不存在該用戶 } } catch (Exception e) { e.printStackTrace(); } }
UserDaoImpl中方法的實現(xiàn)
public boolean CheckUserName(String u_name) { boolean flag=false; String sql="select u_id,u_name,u_password,u_email,u_phone from user where u_name=?"; conn=super.getConnection(); try { pstmt=conn.prepareStatement(sql); pstmt.setString(1,u_name); rs=pstmt.executeQuery(); //如果存在我輸入的用戶名和數(shù)據(jù)庫表中已有的用戶名相同時 if(rs.next()){ flag=true; } } catch (SQLException e) { e.printStackTrace(); }finally{ super.closeAll(conn, pstmt, stmt, rs); } return flag; }
關(guān)于使用Ajax怎么驗證用戶名是否存在就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。