利用jQuery框架,封裝了底層的Ajax異步技術,通過簡單的方法調用即可實現。這篇博客是針對用戶注冊時出現的用戶名重名問題的自動檢測,利用的技術是Ajax異步傳輸。
register.jsp 注冊顯示頁面
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head></head><body> <form action="login" method="post" id="myform"> <table align="center"> <tr> <td>用戶名:</td> <td> <input type="text" name="name" id="username" title="用戶名" /> <div id="message"></div> </td> </tr> <tr> <td>密碼:</td> <td><input type="password" name="pwd" id="userpwd" title="密碼" /> </td> </tr> <tr> <td>性別:</td> <td><input type="radio" name="sex" value="男" title="性別" />男 <input type="radio" name="sex" value="女" title="性別" />女</td> </tr> <tr> <td>年齡:</td> <td><input type="text" name="age" title="年齡" /> </td> </tr> <tr> <td>Email:</td> <td><input type="text" name="email" title="Email" /> </td> </tr> <tr> <td colspan="2" align="center"><input type="button" value="注 冊" onclick="check()" /> <input type="reset" value="重 置" /></td> </tr> </table> </form></body><script type="text/javascript" src="${pageContext.request.contextPath }/script/jquery-3.2.1.js"></script><script type="text/javascript"> // 檢查表單元素的值是否為空 function check() { var myform = document.getElementById("myform"); for ( var i = 0; i < myform.length; i++) { if (myform.elements[i].value == "") { alert(myform.elements[i].title + "不能為空"); myform.elements[i].focus(); return; } } myform.submit(); // 表單中最后input提交標簽用的是button類型,首先不提交表單,在js判斷表單項都不為空時 再提交表單。 } $(function(){ $(":input[name='name']").blur(function(){ var val = $(this).val(); val = $.trim(val); if(val != ""){ var url = "${pageContext.request.contextPath }/UserServlet"; // 將前端的業務轉到后端Servlet來處理。最后Servlet再將結果返回給前端JSP頁面 var args = {"userName":val, "time":new Date()}; $.post(url, args, function(data){ // URL中處理的結果都保存在data數據中,而data中的格式是Servlet中返回的結果格式,即為html $("#message").html(data); //將data結果附加到div中 }); } }); });</script></html>UserServlet 邏輯處理Servlet類,用于對用戶重名的判斷以及響應處理結果的輸出等。其中用于數據庫檢測重名的方法省略了(LoginDao.getInstance().checkUserName(userName.trim()); // 查找數據庫是否存在該用戶名)
新聞熱點
疑難解答
圖片精選