struts2中使用ajax驗證郵箱(使用者名稱)是否被註冊

來源:互聯網
上載者:User

標籤:java   struts2   ajax   js   


action類:

package com.grace.myblog.view.action;import java.io.PrintWriter;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.struts2.ServletActionContext;import org.springframework.stereotype.Controller;import com.grace.myblog.domain.User;@Controllerpublic class EmailCheckAction{/** *  */private static final long serialVersionUID = 1L;public String execute() throws Exception{try{String responseText="";    HttpServletRequest request=ServletActionContext.getRequest();    String email=request.getParameter("email");     System.out.println("---"+email);        User user = registerService.findByEmail(email);//通過email查詢資料庫,判斷郵箱是否已經被註冊        if(user==null){              responseText="2";          }else{            responseText="1";        }        HttpServletResponse response=ServletActionContext.getResponse();            response.setContentType("text/html;charset=utf-8");         PrintWriter out=response.getWriter();          out.print(responseText);          out.flush();          out.close();  }catch(Exception e){e.printStackTrace();}return null;}}

js中的代碼

function checkUserMail(){/* email檢查ajax */var email = document.getElementById("email").value;var xhr = ajaxFunction();xhr.onreadystatechange = function(){if(xhr.readyState==4){if(xhr.status==200){var data = xhr.responseText;//擷取文本if(data=="1"){document.getElementById("emailcheck").innerHTML = "<font color='red'>該郵箱已經被註冊</font>";return false;}else{document.getElementById("emailcheck").innerHTML = "恭喜,該郵箱還未被註冊";return true;}}}}xhr.open("get","emailCheck.action?email="+email,true);xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");xhr.send();}
function ajaxFunction(){   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; }


sturts.xml中的配置

<!-- email檢查ajax  --><action name="emailCheck" class="emailCheckAction" >/*使用註解方式,因此class預設為類名首字母小寫*/</action>

jsp頁面只需要在想顯示提示資訊的地方加上下面這行代碼即可

<div  id="emailcheck" ></div>



相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.