【引入jquery联网】<script src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
1、限制只能输入数字包括小数点都不能输入(type的类型不限制)
(1)onkeyup="value=value.replace(/[^/u4E00-\\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/u4E00-/u9FA5]/g,''))"
(2)onkeyup="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}"
2、限制只能输入数字包括小数点都不能输入(但type的类型必须是type="number")
type="number" onkeypress="return event.keyCode>=48&&event.keyCode<=57"
3、校验身份证信息:
【onkeyup="value=value.replace(/[^\w\.\/]/ig,'')" 】这个是校验只能输入数字和字母的
<input id="idCard" type="text" onkeyup="value=value.replace(/[^\w\.\/]/ig,'')"
onafterpaste="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}" class="form-control" name="idCard" style="width:245px;"/>
这个是js验证身份证的:
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if(idCard != "" && idCard !=null){
//15位和18位身份证号码的正则表达式
var regIdCard=/^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/;
// var regIdCard=/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;;
//如果通过该验证,说明身份证格式正确,但准确性还需计算
if(regIdCard.test(idCard)){
if(idCard.length==18){
var idCardWi=new Array( 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2 ); //将前17位加权因子保存在数组里
var idCardY=new Array( 1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2 ); //这是除以11后,可能产生的11位余数、验证码,也保存成数组
var idCardWiSum=0; //用来保存前17位各自乖以加权因子后的总和
for(var i=0;i<17;i++){
idCardWiSum+=idCard.substring(i,i+1)*idCardWi[i];
}
var idCardMod=idCardWiSum%11;//计算出校验码所在数组的位置
var idCardLast=idCard.substring(17);//得到最后一位身份证号码
//如果等于2,则说明校验码是10,身份证号码最后一位应该是X
if(idCardMod==2){
if(idCardLast=="X"||idCardLast=="x"){
parent.layer.alert('恭喜通过验证啦1!', {
skin: 'layui-layer-lan',
});
}else{
parent.layer.alert('身份证号码错误1!', {
skin: 'layui-layer-lan',
});
return false;
}
}else{
//用计算出的验证码与最后一位身份证号码匹配,如果一致,说明通过,否则是无效的身份证号码
if(idCardLast==idCardY[idCardMod]){
parent.layer.alert('恭喜通过验证啦2!', {
skin: 'layui-layer-lan',
});
}else{
parent.layer.alert('身份证号码错误2!', {
skin: 'layui-layer-lan',
});
return false;
}
}
}
}else{
parent.layer.alert('身份证格式不正确!', {
skin: 'layui-layer-lan',
});
return false;
}
}
});
4、只允许输入汉字
(1)只是input框的一个属性
onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')"
(2)js代码判断
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if(idCard.length!=0){
reg=/^[\u0391-\uFFE5]+$/;
if(!reg.test(idCard)){
parent.layer.alert('对不起,您输入的字符串类型格式不正确!', {
skin: 'layui-layer-lan',
})
}
}
});
5只允许输入英文字母的js代码(大小写不限)
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if(idCard.length!=0){
reg=/^[a-zA-Z]+$/;
if(!reg.test(idCard)){
parent.layer.alert('对不起,您输入的英文字母类型格式不正确!', {
skin: 'layui-layer-lan',
});
return false;
}
}
});
6、验证邮箱是否正确(失去焦点事件)
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
var regu = "^(([0-9a-zA-Z]+)|([0-9a-zA-Z]+[_.0-9a-zA-Z-]*[0-9a-zA-Z]+))@([a-zA-Z0-9-]+[.])+([a-zA-Z]{2}|net|NET|com|COM|gov|GOV|mil|MIL|org|ORG|edu|EDU|int|INT)$"
var re = new RegExp(regu);
if (idCard.search(re) != -1) {
return true;
} else {
window.alert ("请输入有效合法的E-mail地址 !")
return false;
}
});
7、js验证只能输入英文或者是数字
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
var regu = "^[0-9a-zA_Z]+$";
var re = new RegExp(regu);
if (idCard.search(re) != -1) {
return true;
} else {
parent.layer.alert('请输入字母或者是数字!', {
skin: 'layui-layer-lan',
})
return false;
}
});
8、js验证手机号(13,15,17,18开头)
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if(!(/^1(3|4|5|7|8)\d{9}$/.test(idCard))){
parent.layer.alert('手机号码有误,请重填!', {
skin: 'layui-layer-lan',
})
return false;
}
});
9、js验证邮政编码
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
var pattern =/^[0-9]{6}$/;
if(idCard!="")
{
if(!pattern.exec(idCard))
{
parent.layer.alert('请输入正确的邮政编码!', {
skin: 'layui-layer-lan',
})
}
}
});
10、验证日期(有时分秒):
(1)YYYYMMDD的格式
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if (idCard.length != 8) {
parent.layer.alert('日期格式不正确1!', {
skin: 'layui-layer-lan',
})
return false ;
}
var dtDate = null ;
var nYear = parseInt( idCard.substring( 0, 4 ), 10 ) ;
var nMonth = parseInt( idCard.substring( 4, 6 ), 10 ) ;
var nDay = parseInt( idCard.substring( 6, 8 ), 10 ) ;
if( isNaN( nYear ) == true || isNaN( nMonth ) == true || isNaN( nDay ) == true )
{
parent.layer.alert('日期格式不正确2!', {
skin: 'layui-layer-lan',
})
return false ;
}
dtDate = new Date( nYear, nMonth - 1, nDay ) ;
if( nYear != dtDate.getFullYear() || ( nMonth - 1 ) != dtDate.getMonth() || nDay != dtDate.getDate() )
{
parent.layer.alert('日期格式不正确3!', {
skin: 'layui-layer-lan',
})
return false ;
}
});
(2)YYYY-MM-DD的格式
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
var result = idCard.match(/((^((1[8-9]\d{2})|([2-9]\d{3}))(-)(10|12|0?[13578])(-)(3[01]|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(-)(11|0?[469])(-)(30|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(-)(0?2)(-)(2[0-8]|1[0-9]|0?[1-9])$)|(^([2468][048]00)(-)(0?2)(-)(29)$)|(^([3579][26]00)(-)(0?2)(-)(29)$)|(^([1][89][0][48])(-)(0?2)(-)(29)$)|(^([2-9][0-9][0][48])(-)(0?2)(-)(29)$)|(^([1][89][2468][048])(-)(0?2)(-)(29)$)|(^([2-9][0-9][2468][048])(-)(0?2)(-)(29)$)|(^([1][89][13579][26])(-)(0?2)(-)(29)$)|(^([2-9][0-9][13579][26])(-)(0?2)(-)(29)$))/);
if(result==null){
parent.layer.alert('请输入正确的日期格式!', {
skin: 'layui-layer-lan',
})
return false;
}
});
(3)2017-04-01 23:59:59的格式
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if(idCard.length!=0){
var reg = /^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-)) (20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d$/;
var r = idCard.match(reg);
if(r==null)
parent.layer.alert('对不起,您输入的日期及时分秒格式不正确!', {
skin: 'layui-layer-lan',
})
}
});
(4)00:59:59的格式只验证时分秒
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if(idCard.length!=0){
reg=/^((20|21|22|23|[0-1]\d)\:[0-5][0-9])(\:[0-5][0-9])?$/
if(!reg.test(idCard)){
parent.layer.alert('对不起,您输入的时分秒不正确!', {
skin: 'layui-layer-lan',
})
}
}
});
11、固定电话验证:
(1)js代码:格式:03151234567或者0315-1234567
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if(!/^(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}$/.test(idCard)){
parent.layer.alert('固定电话有误,请重填!', {
skin: 'layui-layer-lan',
})
return false;
}
});
(2)js代码:格式:0315-1234567
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if(!/^0[\d]{2,3}-[\d]{7,8}$/.test(idCard)){
parent.layer.alert('固定电话有误,请重填!', {
skin: 'layui-layer-lan',
})
return false;
}
});
12、验证用户名js代码:
验证规则:字母、数字、下划线组成,字母开头,6-16位。例如keleyi,hovertree
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
var re = /^[a-zA-z]\w{5,15}$/;
if(re.test(idCard)){
parent.layer.alert('用户名正确!', {
skin: 'layui-layer-lan',
})
}else{
parent.layer.alert('用户名错误!', {
skin: 'layui-layer-lan',
})
}
});
13、判断是否是数字类型及是否超出规定的数字范围
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if(idCard.length!=0){
reg=/^[-+]?\d*$/;
if(!reg.test(idCard)){//判断是否为数字类型(利用的是正则)
// if(!isNaN(idCard)){//判断是否为数字类型
parent.layer.alert('对不起,您输入的类型不是数字!', {
skin: 'layui-layer-lan',
})
return false;
}
if(idCard >parseInt('123')) //“123”为自己设定的最大值
{
parent.layer.alert('对不起,您输入的数字超出范围!', {
skin: 'layui-layer-lan',
})
return false;
}
}
});
14、判断文件上传的是否是Excel格式:
<div class="panel-body">
<div class="form-group">
<label class="col-sm-2 control-label">上传用户:</label>
<input type="hidden" name="activityUserLimitVo.activityUserLimitType" value="ASSIGN_USER">
<div class="col-sm-8">
<div class="input-group row">
<div class="col-sm-6">
<input name="userInfoFile" type="file" id="userInfoFile">
</div>
<div class="col-sm-3">
<input type="button" id="downUserInfo" value='下载模板' onclick='downUserInfo()'/>
</div>
<c:if test="${null != activityInfoVo}">
<div class="col-sm-3">
<input type="button" id="downUserFile" value='查看文件' onclick='userInfoExport(${activityInfoVo.id})'/>
</div>
</c:if>
</div>
</div>
</div>
</div>
//上传文件类型的验证
if ($("#activityCTypeEnum").val() == 'RATE_WEBSITE') {
var filepath = $("input[name='userInfoFile']").val();
var extStart = filepath.lastIndexOf(".");
var ext = filepath.substring(extStart, filepath.length).toUpperCase();
var activityId = $("input[name='id']").val();
if (!activityId && ext != ".XLSX" && ext != '.XLS') {
parent.layer.alert('请选择正确的文件', {
skin: 'layui-layer-lan',
});
return false;
}
} else {
$("input[name='activityUserLimitVo.activityUserLimitType']").val(null);
}
15、只能输入两位小数:
(1)onkeyup="clearNoNum(this)"
//校验输入框只能输入两位小数
function clearNoNum(obj)
{
//先把非数字的都替换掉,除了数字和.
obj.value = obj.value.replace(/[^\d.]/g,"");
//保证只有出现一个.而没有多个.
obj.value = obj.value.replace(/\.{2,}/g,".");
//必须保证第一个为数字而不是.
obj.value = obj.value.replace(/^\./g,"");
//保证.只出现一次,而不能出现两次以上
obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
//只能输入两个小数
obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3');
}
(2)onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false"
(16)、git版本回退:
(1):使用Git log命令查看所有的历史版本,获取某个历史版本的id,假设查到历史版本的id是139dcfaa558e3276b30b6b2e5cbbb9c00bbdca96。
git reset --hard 139dcfaa558e3276b30b6b2e5cbbb9c00bbdca96
(2):把修改推到远程服务器
1、限制只能输入数字包括小数点都不能输入(type的类型不限制)
(1)onkeyup="value=value.replace(/[^/u4E00-\\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/u4E00-/u9FA5]/g,''))"
(2)onkeyup="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}"
2、限制只能输入数字包括小数点都不能输入(但type的类型必须是type="number")
type="number" onkeypress="return event.keyCode>=48&&event.keyCode<=57"
3、校验身份证信息:
【onkeyup="value=value.replace(/[^\w\.\/]/ig,'')" 】这个是校验只能输入数字和字母的
<input id="idCard" type="text" onkeyup="value=value.replace(/[^\w\.\/]/ig,'')"
onafterpaste="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}" class="form-control" name="idCard" style="width:245px;"/>
这个是js验证身份证的:
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if(idCard != "" && idCard !=null){
//15位和18位身份证号码的正则表达式
var regIdCard=/^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/;
// var regIdCard=/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;;
//如果通过该验证,说明身份证格式正确,但准确性还需计算
if(regIdCard.test(idCard)){
if(idCard.length==18){
var idCardWi=new Array( 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2 ); //将前17位加权因子保存在数组里
var idCardY=new Array( 1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2 ); //这是除以11后,可能产生的11位余数、验证码,也保存成数组
var idCardWiSum=0; //用来保存前17位各自乖以加权因子后的总和
for(var i=0;i<17;i++){
idCardWiSum+=idCard.substring(i,i+1)*idCardWi[i];
}
var idCardMod=idCardWiSum%11;//计算出校验码所在数组的位置
var idCardLast=idCard.substring(17);//得到最后一位身份证号码
//如果等于2,则说明校验码是10,身份证号码最后一位应该是X
if(idCardMod==2){
if(idCardLast=="X"||idCardLast=="x"){
parent.layer.alert('恭喜通过验证啦1!', {
skin: 'layui-layer-lan',
});
}else{
parent.layer.alert('身份证号码错误1!', {
skin: 'layui-layer-lan',
});
return false;
}
}else{
//用计算出的验证码与最后一位身份证号码匹配,如果一致,说明通过,否则是无效的身份证号码
if(idCardLast==idCardY[idCardMod]){
parent.layer.alert('恭喜通过验证啦2!', {
skin: 'layui-layer-lan',
});
}else{
parent.layer.alert('身份证号码错误2!', {
skin: 'layui-layer-lan',
});
return false;
}
}
}
}else{
parent.layer.alert('身份证格式不正确!', {
skin: 'layui-layer-lan',
});
return false;
}
}
});
4、只允许输入汉字
(1)只是input框的一个属性
onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')"
(2)js代码判断
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if(idCard.length!=0){
reg=/^[\u0391-\uFFE5]+$/;
if(!reg.test(idCard)){
parent.layer.alert('对不起,您输入的字符串类型格式不正确!', {
skin: 'layui-layer-lan',
})
}
}
});
5只允许输入英文字母的js代码(大小写不限)
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if(idCard.length!=0){
reg=/^[a-zA-Z]+$/;
if(!reg.test(idCard)){
parent.layer.alert('对不起,您输入的英文字母类型格式不正确!', {
skin: 'layui-layer-lan',
});
return false;
}
}
});
6、验证邮箱是否正确(失去焦点事件)
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
var regu = "^(([0-9a-zA-Z]+)|([0-9a-zA-Z]+[_.0-9a-zA-Z-]*[0-9a-zA-Z]+))@([a-zA-Z0-9-]+[.])+([a-zA-Z]{2}|net|NET|com|COM|gov|GOV|mil|MIL|org|ORG|edu|EDU|int|INT)$"
var re = new RegExp(regu);
if (idCard.search(re) != -1) {
return true;
} else {
window.alert ("请输入有效合法的E-mail地址 !")
return false;
}
});
7、js验证只能输入英文或者是数字
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
var regu = "^[0-9a-zA_Z]+$";
var re = new RegExp(regu);
if (idCard.search(re) != -1) {
return true;
} else {
parent.layer.alert('请输入字母或者是数字!', {
skin: 'layui-layer-lan',
})
return false;
}
});
8、js验证手机号(13,15,17,18开头)
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if(!(/^1(3|4|5|7|8)\d{9}$/.test(idCard))){
parent.layer.alert('手机号码有误,请重填!', {
skin: 'layui-layer-lan',
})
return false;
}
});
9、js验证邮政编码
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
var pattern =/^[0-9]{6}$/;
if(idCard!="")
{
if(!pattern.exec(idCard))
{
parent.layer.alert('请输入正确的邮政编码!', {
skin: 'layui-layer-lan',
})
}
}
});
10、验证日期(有时分秒):
(1)YYYYMMDD的格式
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if (idCard.length != 8) {
parent.layer.alert('日期格式不正确1!', {
skin: 'layui-layer-lan',
})
return false ;
}
var dtDate = null ;
var nYear = parseInt( idCard.substring( 0, 4 ), 10 ) ;
var nMonth = parseInt( idCard.substring( 4, 6 ), 10 ) ;
var nDay = parseInt( idCard.substring( 6, 8 ), 10 ) ;
if( isNaN( nYear ) == true || isNaN( nMonth ) == true || isNaN( nDay ) == true )
{
parent.layer.alert('日期格式不正确2!', {
skin: 'layui-layer-lan',
})
return false ;
}
dtDate = new Date( nYear, nMonth - 1, nDay ) ;
if( nYear != dtDate.getFullYear() || ( nMonth - 1 ) != dtDate.getMonth() || nDay != dtDate.getDate() )
{
parent.layer.alert('日期格式不正确3!', {
skin: 'layui-layer-lan',
})
return false ;
}
});
(2)YYYY-MM-DD的格式
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
var result = idCard.match(/((^((1[8-9]\d{2})|([2-9]\d{3}))(-)(10|12|0?[13578])(-)(3[01]|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(-)(11|0?[469])(-)(30|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(-)(0?2)(-)(2[0-8]|1[0-9]|0?[1-9])$)|(^([2468][048]00)(-)(0?2)(-)(29)$)|(^([3579][26]00)(-)(0?2)(-)(29)$)|(^([1][89][0][48])(-)(0?2)(-)(29)$)|(^([2-9][0-9][0][48])(-)(0?2)(-)(29)$)|(^([1][89][2468][048])(-)(0?2)(-)(29)$)|(^([2-9][0-9][2468][048])(-)(0?2)(-)(29)$)|(^([1][89][13579][26])(-)(0?2)(-)(29)$)|(^([2-9][0-9][13579][26])(-)(0?2)(-)(29)$))/);
if(result==null){
parent.layer.alert('请输入正确的日期格式!', {
skin: 'layui-layer-lan',
})
return false;
}
});
(3)2017-04-01 23:59:59的格式
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if(idCard.length!=0){
var reg = /^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-)) (20|21|22|23|[0-1]?\d):[0-5]?\d:[0-5]?\d$/;
var r = idCard.match(reg);
if(r==null)
parent.layer.alert('对不起,您输入的日期及时分秒格式不正确!', {
skin: 'layui-layer-lan',
})
}
});
(4)00:59:59的格式只验证时分秒
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if(idCard.length!=0){
reg=/^((20|21|22|23|[0-1]\d)\:[0-5][0-9])(\:[0-5][0-9])?$/
if(!reg.test(idCard)){
parent.layer.alert('对不起,您输入的时分秒不正确!', {
skin: 'layui-layer-lan',
})
}
}
});
11、固定电话验证:
(1)js代码:格式:03151234567或者0315-1234567
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if(!/^(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}$/.test(idCard)){
parent.layer.alert('固定电话有误,请重填!', {
skin: 'layui-layer-lan',
})
return false;
}
});
(2)js代码:格式:0315-1234567
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if(!/^0[\d]{2,3}-[\d]{7,8}$/.test(idCard)){
parent.layer.alert('固定电话有误,请重填!', {
skin: 'layui-layer-lan',
})
return false;
}
});
12、验证用户名js代码:
验证规则:字母、数字、下划线组成,字母开头,6-16位。例如keleyi,hovertree
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
var re = /^[a-zA-z]\w{5,15}$/;
if(re.test(idCard)){
parent.layer.alert('用户名正确!', {
skin: 'layui-layer-lan',
})
}else{
parent.layer.alert('用户名错误!', {
skin: 'layui-layer-lan',
})
}
});
13、判断是否是数字类型及是否超出规定的数字范围
$("#idCard").blur(function () {
var idCard = $("#idCard").val();
if(idCard.length!=0){
reg=/^[-+]?\d*$/;
if(!reg.test(idCard)){//判断是否为数字类型(利用的是正则)
// if(!isNaN(idCard)){//判断是否为数字类型
parent.layer.alert('对不起,您输入的类型不是数字!', {
skin: 'layui-layer-lan',
})
return false;
}
if(idCard >parseInt('123')) //“123”为自己设定的最大值
{
parent.layer.alert('对不起,您输入的数字超出范围!', {
skin: 'layui-layer-lan',
})
return false;
}
}
});
14、判断文件上传的是否是Excel格式:
<div class="panel-body">
<div class="form-group">
<label class="col-sm-2 control-label">上传用户:</label>
<input type="hidden" name="activityUserLimitVo.activityUserLimitType" value="ASSIGN_USER">
<div class="col-sm-8">
<div class="input-group row">
<div class="col-sm-6">
<input name="userInfoFile" type="file" id="userInfoFile">
</div>
<div class="col-sm-3">
<input type="button" id="downUserInfo" value='下载模板' onclick='downUserInfo()'/>
</div>
<c:if test="${null != activityInfoVo}">
<div class="col-sm-3">
<input type="button" id="downUserFile" value='查看文件' onclick='userInfoExport(${activityInfoVo.id})'/>
</div>
</c:if>
</div>
</div>
</div>
</div>
//上传文件类型的验证
if ($("#activityCTypeEnum").val() == 'RATE_WEBSITE') {
var filepath = $("input[name='userInfoFile']").val();
var extStart = filepath.lastIndexOf(".");
var ext = filepath.substring(extStart, filepath.length).toUpperCase();
var activityId = $("input[name='id']").val();
if (!activityId && ext != ".XLSX" && ext != '.XLS') {
parent.layer.alert('请选择正确的文件', {
skin: 'layui-layer-lan',
});
return false;
}
} else {
$("input[name='activityUserLimitVo.activityUserLimitType']").val(null);
}
15、只能输入两位小数:
(1)onkeyup="clearNoNum(this)"
//校验输入框只能输入两位小数
function clearNoNum(obj)
{
//先把非数字的都替换掉,除了数字和.
obj.value = obj.value.replace(/[^\d.]/g,"");
//保证只有出现一个.而没有多个.
obj.value = obj.value.replace(/\.{2,}/g,".");
//必须保证第一个为数字而不是.
obj.value = obj.value.replace(/^\./g,"");
//保证.只出现一次,而不能出现两次以上
obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");
//只能输入两个小数
obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3');
}
(2)onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false"
(16)、git版本回退:
(1):使用Git log命令查看所有的历史版本,获取某个历史版本的id,假设查到历史版本的id是139dcfaa558e3276b30b6b2e5cbbb9c00bbdca96。
git reset --hard 139dcfaa558e3276b30b6b2e5cbbb9c00bbdca96
(2):把修改推到远程服务器
git push -f -u origin master
(17)
银行卡校验
/* 校验过程: 1、从卡号最后一位数字开始,逆向将奇数位(1、3、5等等)相加。 2、从卡号最后一位数字开始,逆向将偶数位数字,先乘以2(如果乘积为两位数,将个位十位数字相加,即将其减去9),再求和。 3、将奇数位总和加上偶数位总和,结果应该可以被10整除。 */ /** * 校验银行卡卡号 */ public static boolean checkBankCard(String bankCard) {
if(bankCard.length() < 15 || bankCard.length() > 19) { return false; } char bit = getBankCardCheckCode(bankCard.substring(0, bankCard.length() - 1)); if(bit == 'N'){ return false; } return bankCard.charAt(bankCard.length() - 1) == bit;
} /** * 从不含校验位的银行卡卡号采用 Luhm 校验算法获得校验位 * @param nonCheckCodeBankCard * @return */ public static char getBankCardCheckCode(String nonCheckCodeBankCard){ if(nonCheckCodeBankCard == null || nonCheckCodeBankCard.trim().length() == 0
|| !nonCheckCodeBankCard.matches("\\d+")) { //如果传的不是数据返回N return 'N'; } char[] chs = nonCheckCodeBankCard.trim().toCharArray(); int luhmSum = 0; for(int i = chs.length - 1, j = 0; i >= 0; i--, j++) {
int k = chs[i] - '0'; if(j % 2 == 0) { k *= 2; k = k / 10 + k % 10; } luhmSum += k; } return (luhmSum % 10 == 0) ? '0' : (char)((10 - luhmSum % 10) + '0'); }
|
将图片文件转化为字节数组字符串
/** * 将图片文件转化为字节数组字符串,并对其进行Base64编码处理 * @param imgFile 图片路径 * @return */ public static String getImageStr(String imgFile) { // 待处理的图片 InputStream in = null; byte[] data = null; // 读取图片字节数组
try { in = new FileInputStream(imgFile); data = new byte[in.available()]; in.read(data); in.close(); } catch (IOException e) { e.printStackTrace(); } // 对字节数组Base64编码
BASE64Encoder encoder = new BASE64Encoder(); return encoder.encode(data);// 返回Base64编码过的字节数组字符串 }
|
将字节数组字符串转化为图片文件
public static boolean generateImage(String imgStr,String imgFile)throws Exception { // 对字节数组字符串进行Base64解码并生成图片 if (imgStr == null) // 图像数据为空 return false; BASE64Decoder decoder = new BASE64Decoder();
try { // Base64解码 byte[] b = decoder.decodeBuffer(imgStr); for (int i = 0; i < b.length; ++i) { if (b[i] < 0) {// 调整异常数据 b[i] += 256; } } // 生成jpeg图片
String imgFilePath = imgFile;// 新生成的图片 OutputStream out = new FileOutputStream(imgFilePath); out.write(b); out.flush(); out.close(); return true; } catch (Exception e) { throw e;
} }
|
生成随意8位字符
/** * 生成随意8位字符,一千万内无重复 * @return */ public static String generateShortUuid() { StringBuffer shortBuffer = new StringBuffer(); String uuid = UUID.randomUUID().toString().replace("-", ""); for (int i = 0; i < 8; i++) {
String str = uuid.substring(i * 4, i * 4 + 4); int x = Integer.parseInt(str, 16); shortBuffer.append(chars[x % 0x3E]); } return shortBuffer.toString(); }
|