input框輸入校驗 – input禁輸校驗+js校驗+後臺校驗
爲了防止url繞過前端校驗訪問後臺造成數據損失問題的發生,所以不要太依賴於前端校驗。開發是前後端都要進行校驗。
效果圖:
html
<li>
<strong>聯繫人電話 <font color="#ff0000">*</font></strong>
<div class="fl"><input type="text" name="GongSiphone" value="" placeholder="請輸入聯繫人電話.."
onkeyup="value=value.replace(/\D/g, '')" ng-pattern="/[^a-zA-Z]/" maxlength=11
class="ipt phone"/></div>
</li>
<li>
<strong>聯繫人郵箱 <font color="#ff0000">*</font></strong>
<div class="fl"><input type="text" name="email" value="" placeholder="請輸入聯繫人郵箱,訂單提交成功後,域名驗證郵件將發送至此郵箱,.."
onkeyup="value=value.replace(/[^\w\u4E00-\[email protected]]/g, '')"
class="ipt email"/>
</div>
</li>
js
$('.submitBtn').click(function () {
var EmailReg = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/; //郵件正則
var PhoneReg = /^0{0,1}(13[0-9]|15[0-9]|153|156|18[7-9])[0-9]{8}$/ ; //手機正則
var $nickname = $('.nickname');
var $email = $('.email');
var $phone = $('.phone');
var $domainName = $('.domainName');
if ($nickname.val() == '') {
$.tooltip('請完善訂單信息...');
$nickname.focus();
}else if($phone.val() == ''){
$.tooltip('手機還沒填呢...'); $phone.focus();
}else if(!PhoneReg.test($phone.val())){
$.tooltip('手機格式錯咯...'); $phone.focus();
}else if($email.val() == ''){
$.tooltip('郵箱還沒填呢...'); $email.focus();
}else if(!EmailReg.test($email.val())){
$.tooltip('郵箱格式錯咯...'); $email.focus();
} else {
$.tooltip('提交成功,2秒後自動關閉', 2000, true);
setTimeout(function () {
$el.hDialog('close', {box: '#HBox'}, 'url'); //也可以加跳轉鏈接哦~
/*$el.hDialog('close', {box: '#HBox'});*/
}, 2000);
}
})
;
後臺
public static boolean checkPhone(String phone)
{
Pattern pattern = Pattern.compile("/^0{0,1}(13[0-9]|15[0-9]|153|156|18[7-9])[0-9]{8}$/");
Matcher matcher = pattern.matcher(phone);
if (matcher.matches())
{
return true;
}
return false;
}
public static boolean checkEmail(String email)
{
Pattern pattern = Pattern.compile("/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/");
Matcher matcher = pattern.matcher(email);
if (matcher.matches())
{
return true;
}
return false;
}