jquery驗(yàn)證郵箱格式是否正確實(shí)例講解
我們來看看都有哪些郵箱:

我們?nèi)绻粋€(gè)個(gè)的郵箱進(jìn)行判斷,顯然是不可能的了。
—個(gè)完整的Internet郵件地址由以下兩個(gè)部分組成,格式如下:登錄名@主機(jī)名.域名
中間用—個(gè)表示“在”(at)的符號(hào)“@”分開,符號(hào)的左邊是對(duì)方的登錄名,右邊是完整的主機(jī)名,它由主機(jī)名與域名 組成。其中,域名由幾部分組成,每一部分稱為一個(gè)子域(Subdomain),各子域之間用圓點(diǎn)“.”隔開,每個(gè)子域都會(huì)告訴用戶一些有關(guān)這臺(tái)郵件服務(wù)器 的信息。
關(guān)鍵驗(yàn)證的正則表達(dá)式: var myreg = /^([\.a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;
校驗(yàn)輸入框:
//驗(yàn)證郵箱
function vailEmail(){
var email = jQuery("#email").val();
var flag = false;
var message = "";
var myreg = /^([\.a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;
if(email ==''){
message = "郵箱不能為空!";
}else if(!myreg.test(email)){
message = "請(qǐng)輸入有效的郵箱地址!";
}else if(checkEmailIsExist()){
message = "該郵箱地址已經(jīng)被注冊(cè)!";
}else{
flag = true;
}
if(!flag){
//錯(cuò)誤提示
//jQuery("#emailDiv").removeClass().addClass("ui-form-item has-error");
// jQuery("#emailP").html("");
//jQuery("#emailP").html("<i class=\"icon-error ui-margin-right10\"> <\/i>"+message);
//jQuery("#email").focus();
}else{
//正確提示
//jQuery("#emailDiv").removeClass().addClass("ui-form-item has-success");
//jQuery("#emailP").html("");
//jQuery("#emailP").html("<i class=\"icon-success ui-margin-right10\"> <\/i>該郵箱可用");
}
return flag;
}
寫一個(gè)方法來驗(yàn)證一下
//驗(yàn)證郵箱是否存在
function checkEmailIsExist(){
var email = jQuery("#email").val();
var flag = false;
jQuery.ajax(
{ url: "checkEmail?t=" + (new Date()).getTime(),
data:{email:email},
dataType:"json",
type:"GET",
async:false,
success:function(data) {
var status = data.status;
if(status == "1"){
flag = true;
}
}
});
return flag;
}
后臺(tái)處理程序:
@RequestMapping(value = "/checkEmail", method = RequestMethod.GET)
public void checkEmail(HttpServletRequest request,HttpServletResponse response) {
Map<String, Object> map = new HashMap<String, Object>();
try {
String email = request.getParameter("email");
String status = "0";
//寫查詢語句,查詢表里面是否存在該郵箱
//UserBaseInfo userBaseInfo = userService.findUserByEmail(email);
//if(userBaseInfo!=null)status="1";
map.put("status", status);
String data = JSONObject.fromObject(map).toString();
response.getWriter().print(data);
response.getWriter().flush();
response.getWriter().close();
} catch (Exception ex) {
}
}
以上就是jquery驗(yàn)證郵箱格式是否正確實(shí)例代碼,利用了正則表達(dá)式:var myreg = /^([\.a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;,大家可以動(dòng)手試一試。
相關(guān)文章
輕松使用jQuery雙向select控件Bootstrap Dual Listbox
這篇文章主要教大家如何輕松使用jQuery雙向select控件Bootstrap Dual Listbox,感興趣的小伙伴們可以參考一下2015-12-12
讓input框?qū)崿F(xiàn)類似百度的搜索提示(基于jquery事件監(jiān)聽)
讓input框?qū)崿F(xiàn)類似百度的搜索提示,oninput和onpropertychange事件監(jiān)聽,通過ajax獲取json數(shù)據(jù)2014-01-01
jQuery中table數(shù)據(jù)的值拷貝和拆分
在開發(fā)的過程中,經(jīng)常會(huì)遇到彈出框顯示前一頁table列表的情況,這時(shí)候會(huì)有好多方法來來解決。下面小編給大家介紹怎么用jquery將值拷貝到第二頁并拆分拷貝的值,需要的朋友參考下2017-03-03
如何用input標(biāo)簽和jquery實(shí)現(xiàn)多圖片的上傳和回顯功能
本文通過圖文并茂的形式給大家介紹了如何用input標(biāo)簽和jquery實(shí)現(xiàn)多圖片的上傳和回顯功能,需要的朋友可以參考下2018-05-05
JavaScript中利用jQuery綁定事件的幾種方式小結(jié)
這篇文章主要介紹了JavaScript中利用jQuery綁定事件的幾種方式小結(jié),包括不調(diào)用jQuery的"原生js"實(shí)現(xiàn)方式,需要的朋友可以參考下2016-03-03
jq stop()和:is(:animated)的用法及區(qū)別(詳解)
下面小編就為大家?guī)硪黄猨q stop()和:is(:animated)的用法及區(qū)別(詳解)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-02-02
jquery實(shí)現(xiàn)的樹形目錄實(shí)例
這篇文章主要介紹了jquery實(shí)現(xiàn)的樹形目錄,涉及jquery針對(duì)頁面元素及鼠標(biāo)事件的相關(guān)操作技巧,需要的朋友可以參考下2015-06-06
實(shí)例講解JQuery中this和$(this)區(qū)別
這篇文章主要介紹了實(shí)例講解JQuery中this和$(this)的區(qū)別,this表示當(dāng)前的上下文對(duì)象是一個(gè)html對(duì)象,可以調(diào)用html對(duì)象所擁有的屬性和方法,$(this),代表的上下文對(duì)象是一個(gè)jquery的上下文對(duì)象,可以調(diào)用jquery的方法和屬性值,需要的朋友可以參考下2014-12-12
jquer之a(chǎn)jaxQueue簡(jiǎn)單實(shí)現(xiàn)代碼
手頭不是很忙,突然想到了ajax queue這個(gè)概念,之前貌似有看技術(shù)文章中提到過這個(gè),就想著用jquery來實(shí)現(xiàn)一下,思想比較簡(jiǎn)單2011-09-09

