js 表单验证方法(实用)
程序员文章站
2023-11-27 12:07:04
//下面验证的是长度 function checktextlen(textid){ var len = 0; var checkfield=document.getelem...
//下面验证的是长度
function checktextlen(textid){
var len = 0;
var checkfield=document.getelementbyid(textid);
var inputstring = checkfield.value;
var string_length = inputstring.length;
if (string_length == 0)
{
return 0;
}
for (var i=0;i<string_length;i++)
{
if (inputstring.charat(i).charcodeat()>255) len+=2;
else len+=1;
}
return len;
}
function checktextlength(textid,length,msg){
var textobj =document.getelementbyid(textid);
if(checktextlen(textid)>length/1){
alert("["+msg+"]"+"长度最大为"+length+"位,"+"请重新输入!注意:一个汉字占2位");
textobj.focus();
return false;
}else {
return true;
}
}
//下面验证不含有非法的字符,中文,英文,数字都是合法的。
function isvalidstring(textid,errmsg){
szstr = document.getelementbyid(textid).value;
voidchar = "'\"><`~!@#$%^&\(\)()!¥……??“”‘'*";
for(i = 0 ; i < voidchar.length; i ++){
achar = voidchar.substring(i, i + 1);
if(szstr.indexof(achar) > -1){
alert(errmsg);
return false;
}
}
return true;
}
//下面验证只可以输入字母,数字,下划线
function isenglish(textid,errmsg)
{
s = document.getelementbyid(textid).value;
//下面的正则表达式限制的长度在6到20之间
//var patrn=/^(\w){6,20}$/;
var patrn =/^(\w)*$/;
if (!patrn.exec(s)){
alert(errmsg);
return false
}
return true
}
//下面验证只允许中文
function ischinese(textid,errmsg)
{
s = document.getelementbyid(textid).value;
var patrn =/[^\u4e00-\u9fa5]/g;
if (patrn.exec(s)){
alert(errmsg);
return false
}
return true
}
//下面验证只允许数字
function isnumber(textid,errmsg)
{
s = document.getelementbyid(textid).value;
//下面的正则表达式限制的长度在6到20之间
//var patrn=/^(\d){6,20}$/;
var patrn =/^(\d)*$/;
if (!patrn.exec(s)){
alert(errmsg);
return false
}
return true
}
使用js的正则表达式用来控制不允许在文本框里面输入非数字,也就是只允许输入数字。调用方法 : onkeyup="onlynum(this);"
function onlynum(obj)
{
temp = obj.value;
//注意下面的正则表达式的写法,没有用引号括起来。。
obj.value = temp.replace(/\d/g,'');
}
function checktextlen(textid){
var len = 0;
var checkfield=document.getelementbyid(textid);
var inputstring = checkfield.value;
var string_length = inputstring.length;
if (string_length == 0)
{
return 0;
}
for (var i=0;i<string_length;i++)
{
if (inputstring.charat(i).charcodeat()>255) len+=2;
else len+=1;
}
return len;
}
function checktextlength(textid,length,msg){
var textobj =document.getelementbyid(textid);
if(checktextlen(textid)>length/1){
alert("["+msg+"]"+"长度最大为"+length+"位,"+"请重新输入!注意:一个汉字占2位");
textobj.focus();
return false;
}else {
return true;
}
}
//下面验证不含有非法的字符,中文,英文,数字都是合法的。
function isvalidstring(textid,errmsg){
szstr = document.getelementbyid(textid).value;
voidchar = "'\"><`~!@#$%^&\(\)()!¥……??“”‘'*";
for(i = 0 ; i < voidchar.length; i ++){
achar = voidchar.substring(i, i + 1);
if(szstr.indexof(achar) > -1){
alert(errmsg);
return false;
}
}
return true;
}
//下面验证只可以输入字母,数字,下划线
function isenglish(textid,errmsg)
{
s = document.getelementbyid(textid).value;
//下面的正则表达式限制的长度在6到20之间
//var patrn=/^(\w){6,20}$/;
var patrn =/^(\w)*$/;
if (!patrn.exec(s)){
alert(errmsg);
return false
}
return true
}
//下面验证只允许中文
function ischinese(textid,errmsg)
{
s = document.getelementbyid(textid).value;
var patrn =/[^\u4e00-\u9fa5]/g;
if (patrn.exec(s)){
alert(errmsg);
return false
}
return true
}
//下面验证只允许数字
function isnumber(textid,errmsg)
{
s = document.getelementbyid(textid).value;
//下面的正则表达式限制的长度在6到20之间
//var patrn=/^(\d){6,20}$/;
var patrn =/^(\d)*$/;
if (!patrn.exec(s)){
alert(errmsg);
return false
}
return true
}
使用js的正则表达式用来控制不允许在文本框里面输入非数字,也就是只允许输入数字。调用方法 : onkeyup="onlynum(this);"
function onlynum(obj)
{
temp = obj.value;
//注意下面的正则表达式的写法,没有用引号括起来。。
obj.value = temp.replace(/\d/g,'');
}
上一篇: Python数据类型之Set集合实例详解
下一篇: js select 控制实现代码