1、校验输入的长度不能超长
使用:<input type="text" size="15" name="fDept" onblur="fc_chk_byte(this,50);"/>
function fc_chk_byte(aro_name,ari_max){
var ls_str = aro_name.value;
var li_str_len = ls_str.length;
var rtn = true;
var li_max = ari_max;
var i = 0;
var li_byte = 0;
var li_len = 0;
var ls_one_char = "";
var ls_str2 = "";
for(i=0; i< li_str_len; i++) {
ls_one_char = escape(ls_str.charAt(i));
if ( ls_one_char.length == 1 ) {
li_byte ++;
} else if (ls_one_char.indexOf("%u") != -1) {
li_byte += 2;
} else if (ls_one_char.indexOf("%") != -1) {
li_byte += ls_one_char.length/3;
}
if(li_byte <= li_max) {
li_len = i + 1;
}
}
if(li_byte > li_max) {
alert("입력하신 정보는 " +li_max+"자리까지 입력 가능합니다.");
ls_str2 = ls_str.substr(0, li_len);
aro_name.value = ls_str2;
rtn = false;
aro_name.focus();
}
return rtn;
}
2、使用正则表达式,校验必须输入英文和空格
<input type="text" size="15" name="fName" onkeyup="this.value=this.value.replace(/[^a-zA-Z\s]/g,'')"/>
3、使用正则表达式,校验只能输入数字
<input type="text" size="15" maxlength=30 name="fTel" onblur="fc_chk_byte(this,50);" onkeyup="this.value=this.value.replace(/[^\d\-]/g,'')"/>
4、校验是否为空
function doCheckForm(){
if(isEmpty(f.bDept))
{
alert('部门不能为空');
f.bDept.focus();
return;
}
return true;
}
function isEmpty(input) {
if (input.value == null || input.value.replace(/ /gi,"") == "") {
return true;
}
return false;
}
5、校验email是否合法
function doCheckForm(){
if(!isValidEmail(f.fEmail)&&f.fEmail.value.length>0)
{
alert('email不合法');
f.fEmail.focus();
return;
}
return true;
}
function isValidEmail(input) {
var format = /^((\w|[\-\.])+)@((\w|[\-\.])+)\.([A-Za-z]+)$/;
return isValidFormat(input,format);
}