87,921
社区成员
发帖
与我相关
我的任务
分享
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>zheze</title>
<script src="~/Content/jquery-2.0.3.min.js"></script>
<style>
.first{
margin-top:10px;
}
</style>
</head>
<body>
<div>
<div class="first">身份证号: <input id="identity" maxlength="19"/></div>
<div class="first">电话号码: <input id="phone" maxlength="13"/></div>
<div class="first">日期: <input id="date" placeholder="yyyy-mm-dd" maxlength="12"/></div>
<div class="first">汉字: <input id="hanzi" /></div>
<div class="first">数字: <input id="figure" /></div>
<div class="first">所有字母: <input id="letter" /></div>
<div class="first">大写字母: <input id="bigletter" /></div>
<div class="first">小写字母: <input id="xiaoletter" /></div>
<div class="first">不能由特殊字符只能由数字、大小写字母组成: <input id="kong" /></div>
</div>
<script>
$('#identity').blur(function () {
var identity = document.getElementById("identity").value;
if (/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$/.test(identity)) {
}else{
document.getElementById("identity").value = '';
document.getElementById("identity").setAttribute("placeholder", "身份证号不正确请重新输入");
};
})
$('#phone').blur(function () {
var phone = document.getElementById("phone").value;
if (/^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$/.test(phone)) {
} else {
document.getElementById("phone").value = '';
document.getElementById("phone").setAttribute("placeholder", "电话号码不正确请重新输入");
};
})
$('#date').blur(function () {
var date = document.getElementById("date").value;
if (/^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$/.test(date)) {
} else {
document.getElementById("date").value = '';
document.getElementById("date").setAttribute("placeholder", "日期格式不正确请重新输入");
};
})
$('#hanzi').blur(function () {
var hanzi = document.getElementById("hanzi").value;
if (/^[\u4e00-\u9fa5]$/.test(hanzi)) {
} else {
document.getElementById("hanzi").value = '';
document.getElementById("hanzi").setAttribute("placeholder", "格式不正确请重新输入");
};
})
$('#figure').blur(function () {
var figure = document.getElementById("figure").value;
if (/^[0-9]$/g.test(figure)) {
} else {
document.getElementById("figure").value = '';
document.getElementById("figure").setAttribute("placeholder", "格式不正确请重新输入");
};
})
$('#letter').blur(function () {
var letter = document.getElementById("letter").value;
if (/[A-Za-z]$/g.test(letter)) {
} else {
document.getElementById("letter").value = '';
document.getElementById("letter").setAttribute("placeholder", "格式不正确请重新输入");
};
})
$('#bigletter').blur(function () {
var bigletter = document.getElementById("bigletter").value;
if (/^[A-Z]$/.test(bigletter)) {
} else {
document.getElementById("bigletter").value = '';
document.getElementById("bigletter").setAttribute("placeholder", "格式不正确请重新输入");
};
})
$('#xiaoletter').blur(function () {
var xiaoletter = document.getElementById("xiaoletter").value;
if (/^[a-z]$/.test(xiaoletter)) {
} else {
document.getElementById("xiaoletter").value = '';
document.getElementById("xiaoletter").setAttribute("placeholder", "格式不正确请重新输入");
};
})
$('#kong').blur(function () {
var kong = document.getElementById("kong").value;
if (/[A-Za-z0-9]$/.test(kong)) {
} else {
document.getElementById("kong").value = '';
document.getElementById("kong").setAttribute("placeholder", "格式不正确请重新输入");
};
})
</script>
</body>
</html>
<div class="first">身份证号: <input maxlength="19" placeholder="请输入正确的身份证号" data-reg="^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$"/></div>
<div class="first">电话号码: <input maxlength="13" placeholder="请输入正确的手机号码" data-reg="^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$"/></div>
....省略....
<script>
// 不依懒库,只修改html不影响js代码
window.onload = function () {
Array.from(document.querySelectorAll('.first input')).forEach(function(input){
input.addEventListener('blur',function(e){
var tag = e.target
tag.value = new RegExp(tag.dataset.reg).test(tag.value) ? tag.value : ''
},false)
})
}
</script>
function vivaValid(obj) {
var r = '',
o = $(obj),
v = o.val(),
n = o.attr('name'),
typ = o.attr('type'),
tag = o.get(0).tagName.toLowerCase(), //输入框类型input、textarea、select、checkbox、radio等
reg = o.attr('vali_reg'), //校验用正则表达式
msg = o.attr('vali_msg'), //校验结果通知消息
mbx = o.attr('msg_box'), //显示校验消息的容器编号
max = o.attr('maxlength'), //最大长度限制
min = o.attr('minlength'), //最小长度限制
url = o.attr('vali_only'), //匹配项的编号
mth = o.attr('vali_match'), //匹配项的编号
btn = o.attr('lock_btn'), //需禁用的按钮编号(逗号分隔)
lks = o.attr('lock_self'), //验证不过时,是否焦点锁定自己
rqr = o.is(':required'); //是否必填
$('.warn-msg').remove();
$('#error-message').html('');
var r = (rqr && tag == 'input' && !v) ? msg || 'This can not be empty'
: (rqr && tag == 'input' && o.attr('type') == 'checkbox' && !o.is(':checked')) ? msg || 'Please checked it to continue'
: (rqr && tag == 'input' && v && typ == 'email' && !validEmail(v)) ? 'Incorrect email format'
: (rqr && tag == 'textarea' && !v) ? msg || 'This can not be empty'
: (rqr && tag == 'select' && !v) ? msg || 'This must select one to continue'
: (min != undefined && v && v.length < parseInt(min, 10)) ? ('Must be at least ' + min + ' characters')
: (max != undefined && v && v.length > parseInt(max, 10)) ? ('No more than ' + max + ' characters')
: (reg != undefined && msg != undefined && v && !(new RegExp(reg, 'g')).test(v)) ? msg
: (mth != undefined && msg != undefined && v && v != $('#' + mth).val()) ? msg
: (url != undefined && v) ? checkOnly(url, v, n)
: '';
if (mbx) {//有指定消息容器
$('#' + mbx).html(r);
} else {//默认显示在校验标签后面
//没通过则显示提示消息,通过则取消显示,这里样式自己灵活设定
r ? $('<p class="help-block warn-msg">' + r + '</p>').insertAfter(o) : $('.warn-msg').remove();
}
r && (lks == undefined || lks) && o.focus(); //默认锁定,只有指定并且值为true,才焦点锁定自己
if (btn != undefined) { //指定了禁用按钮
var btns = btn.split(','); //用逗号分割指定的多个按钮编号
for (var i = 0; i < btns.length; i++) {
//根据验证结果,逐个禁用或解禁指定的提交按钮
r ? $('#' + btns[i]).attr('disabled', 'disabled') : $('#' + btns[i]).removeAttr('disabled');
}
}
}