Ajax 實現驗證郵箱地址唯一性
實現效果:
- 安裝
express
、path
模組 - 在
node
環境中啟動app.js
- 在瀏覽器位址列輸入
http://localhost:3000/Email.html
- 輸入框失去焦點時,首先判斷是否為郵箱格式,再驗證輸入郵箱的唯一性。為了實現基本的功能,
app.js
將123456@123.com
作為已註冊的郵箱
實現程式碼:
Email.html
:
(引入了bootstrap
框架bootstrap.min.css
)
[→關於ajax.js
封裝函式請點選此處←]
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>驗證郵箱地址唯一性</title>
<link rel="stylesheet" href="/assets/bootstrap/dist/css/bootstrap.min.css">
<style type="text/css">
p:not(:empty) {
padding: 15px;
}
.container {
padding-top: 100px;
}
</style>
</head>
<body>
<div class="container">
<div class="form-group">
<label>郵箱地址</label>
<input type="email" class="form-control" placeholder="請輸入郵箱地址" id="email">
</div>
<!-- 錯誤 bg-danger 正確 bg-success -->
<p id="info"></p>
</div>
<script src="/js/ajax.js"></script>
<script>
// 獲取頁面中的元素
var emailInp = document.getElementById('email');
var info = document.getElementById('info');
// 當文字框離開焦點以後
emailInp.onblur = function() {
// 獲取使用者輸入的郵箱地址
var email = this.value;
// 驗證郵箱地址的正規表示式
var reg = /^[A-Za-z\d]+([-_.][A-Za-z\d]+)*@([A-Za-z\d]+[-.])+[A-Za-z\d]{2,4}$/;
// 如果使用者輸入的郵箱地址不符合規則
if (!reg.test(email)) {
// 給出使用者提示
info.innerHTML = '請輸入符合規則的郵箱地址';
// 讓提示資訊顯示為錯誤提示資訊的樣式
info.className = 'bg-danger';
// 阻止程式向下執行
return;
}
// 向伺服器端傳送請求
ajax({
type: 'get',
url: 'http://localhost:3000/verifyEmailAdress',
data: {
email: email
},
success: function(result) {
console.log(result);
info.innerHTML = result.message;
info.className = 'bg-success';
},
error: function(result) {
console.log(result);
info.innerHTML = result.message;
info.className = 'bg-danger';
}
});
}
</script>
</body>
</html>
app.js
:
// 引入express框架
const express = require('express');
// 路徑處理模組
const path = require('path');
// 建立web伺服器
const app = express();
// 靜態資源訪問服務功能,配置靜態頁面存放路徑
app.use(express.static(path.join(__dirname, 'public')));
// 郵箱地址驗證
app.get('/verifyEmailAdress', (req, res) => {
// 接收客戶端傳遞過來的郵箱地址
const email = req.query.email;
// 判斷郵箱地址註冊過的情況
if (email == '123456@123.com') {
// 設定http狀態碼並對客戶端做出響應
res.status(400).send({ message: '郵箱地址已經註冊過了, 請更換其他郵箱地址。' });
} else {
// 郵箱地址可用的情況
// 對客戶端做出響應
res.send({ message: '恭喜, 郵箱地址可用!' });
}
});
// 監聽埠
app.listen(3000);
// 控制檯提示輸出
console.log('伺服器啟動成功');
相關文章
- 郵箱地址正規表示式驗證
- Java實現郵箱驗證碼功能Java
- Laravel 專案實現郵箱驗證功能Laravel
- 郵箱格式驗證
- js驗證郵箱JS
- 郵箱地址校驗方法探究
- JavaScript郵箱格式驗證JavaScript
- qq郵箱收不到epic驗證郵件怎麼辦 epic郵箱驗證沒反應怎麼辦
- 驗證手機、郵箱、漢字、身份證、URL、IP地址等java程式碼工具類Java
- 直播app原始碼,驗證方式選擇郵箱驗證時,自動給輸入好的郵箱傳送驗證碼APP原始碼
- 正規表示式驗證郵箱及其解析
- Destoon如何去除登入的郵箱驗證?
- 【JavaScript】使用js實現傳送郵箱驗證碼,按鈕倒數計時JavaScriptJS
- js正規表示式驗證手機,郵箱,身份證JS
- swift 郵箱、密碼、手機號、身份證驗證正則Swift密碼
- 直播系統原始碼,選擇驗證方式時選擇郵箱驗證原始碼
- layui使用html+servlet+ajax實現登入驗證UIHTMLServlet
- Jenkins實現CICD之郵箱告警Jenkins
- 如何在 Xamarin 中快速整合 Android 版認證服務 - 郵箱地址篇Android
- TP5使用bootstrapvalidator進行非同步驗證郵箱boot非同步
- 保障郵箱安全,驗證碼獨有四個優勢
- 【驗證碼逆向專欄】xx80 郵箱多種類驗證碼逆向分析
- Gitlab伺服器郵箱配置,實現自動為使用者傳送郵件(註冊傳送驗證連結)Gitlab伺服器
- 實現郵箱的已讀回執
- 使用zabbix實現郵箱/釘釘告警
- Laravel5.8 入門系列三,新增註冊郵箱驗證Laravel
- 網易郵箱回應大量賬號被叫賣:僅涉及郵箱地址 已報案
- thinkphp驗證器獲取$data資料,自定義驗證,多條件唯一性驗證unique驗證PHP
- jQuery驗證手機號郵箱身份證的正規表示式(含港澳臺)jQuery
- 書寫一個用於驗證郵箱的正規表示式
- Java實現網易企業163郵箱傳送郵件Java
- 郵箱/郵件地址的正規表示式及分析(JavaScript,email,regex)JavaScriptAI
- win10郵件同步163郵箱的方法_win10郵件怎麼繫結163郵箱實現同步Win10
- 如何用python實現郵箱傳送資訊Python
- 使用 Message Manager 實現開箱即用的驗證(Validation)資訊丟擲
- QQ郵箱正確輸入方式怎麼寫的 qq郵箱地址格式是qq號和什麼
- easy-captcha實現驗證碼驗證APT
- springboot 實現郵箱找回密碼(使用到redis, stmp)Spring Boot密碼Redis