이번에는 AJAX를 사용하여 사용자 이름이 존재하는지 비동기적으로 확인할 때의 주의사항을 소개해드리겠습니다.
AJAX를 사용하여 사용자 이름 존재 여부에 대한 비동기 확인 완료:
1. 이벤트 트리거:
* onblur
2. AJAX 코드 작성:
* 항목에 제출 작업: 사용자 이름 매개변수 전달
3. Action
*을 작성하여 사용자 이름: 모델 기반 수신을 받습니다.
4.* 엔터티 클래스를 작성합니다.
* User
* User.hbm.xml
* Spring으로 구성합니다.
5. DAO 쓰기
* HibernateDaoSupport 상속
* 구성에 sessionFactory 삽입
6. 쓰기 서비스:
* UserDao 삽입
* 트랜잭션 관리:
핵심 코드 구현:
function checkUsername(){ // 获得文件框值: var username = document.getElementById("username").value; // 1.创建异步交互对象 var xhr = createXmlHttp(); // 2.设置监听 xhr.onreadystatechange = function(){ if(xhr.readyState == 4){ if(xhr.status == 200){ document.getElementById("span1").innerHTML = xhr.responseText; } } } // 3.打开连接 xhr.open("GET","${pageContext.request.contextPath}/user_findByName.action?time="+new Date().getTime()+"&username="+username,true); // 4.发送 xhr.send(null); } function createXmlHttp(){ var xmlHttp; try{ // Firefox, Opera 8.0+, Safari xmlHttp=new XMLHttpRequest(); } catch (e){ try{// Internet Explorer xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e){ try{ xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } catch (e){} } } return xmlHttp; }
public String findByName() throws IOException { // 调用Service进行查询: User existUser = userService.findByUsername(user.getUsername()); // 获得response对象,项页面输出: HttpServletResponse response = ServletActionContext.getResponse(); response.setContentType("text/html;charset=UTF-8"); // 判断 if (existUser != null) { // 查询到该用户:用户名已经存在 response.getWriter().println("<font color='red'>用户名已经存在</font>"); } else { // 没查询到该用户:用户名可以使用 response.getWriter().println("<font color='green'>用户名可以使用</font>"); } return NONE; }
private UserDao userDao; public void setUserDao(UserDao userDao) { this.userDao = userDao; } // 按用户名查询用户的方法: public User findByUsername(String username){ return userDao.findByUsername(username); }
나는 이 기사에서 사례를 읽었다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트에서 다른 관련 기사를 주목하세요!
추천 자료:
Ajax는 페이지로 이동하기 위한 게시물 요청을 어떻게 작동합니까?
위 내용은 AJAX를 사용하여 사용자 이름이 존재하는지 비동기식으로 확인의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!