夜的第七章

WEB开发个人博客。

« iframe页自适应高度问题特殊符号一批..保存一下..以防以后会用到 »

js判断数字,字母,中文

利用正则表达式限制网页表单里的文本框输入内容:



用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))"



用正则表达式限制只能输入全角字符: onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))"



用正则表达式限制只能输入数字:onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"



只能输入数字和小数点:<input type="text" size="12" onkeyup="if(!/^\d*(\.\d*)?$/.test(this.value))this.value=this.value.substr(0,this.value.length-1)" />



用正则表达式限制只能输入数字和英文:onkeyup="value=value.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"

 

 

 

var reg = /^(\w|[\u4E00-\u9FA5])*$/;

if(arr=username.match(reg))

{

ti=1;

return ture;

}

else

{

alert("用户名只允许为英文,数字和汉字的混合,\n请检查是否前后有空格或者其他符号");

ti=0;

return false;

}

 

 

数字

<script>

function check()

{

if(!isNaN(document.all.form.str.value))

{

alert("数字");

}

</script>

字母

<script>

function check()

{

var str = /[_a-zA-Z]/;

if(str.test(document.all.form.str.value))

{

alert("字母");

}

}

</script>

<form name="form" action="" onsubmit="return check();">

<input type=text name=str>

<input type=submit>

<form>



---------------------------------------------------

/**

* 一些常用的javascript函数(方法)

*

* 为便于使用,均书写成String对象的方法

* 把他保存为.js文件,可方便的扩展字符串对象的功能

*

* 方法名 功 能

* ----------- --------------------------------

* Trim 删除首位空格

* Occurs 统计指定字符出现的次数

* isDigit 检查是否由数字组成

* isAlpha 检查是否由数字字母和下划线组成

* isNumber 检查是否为数

* lenb 返回字节数

* isInChinese 检查是否包含汉字

* isEmail 简单的email检查

* isDate 简单的日期检查,成功返回日期对象

* isInList 检查是否有列表中的字符字符

* isInList 检查是否有列表中的字符字符

*/

/*** 删除首尾空格 ***/

String.prototype.Trim = function() {

return this.replace(/(^\s*)|(\s*$)/g, "");

}

/*** 统计指定字符出现的次数 ***/

String.prototype.Occurs = function(ch) {

// var re = eval("/[^"+ch+"]/g");

// return this.replace(re, "").length;

return this.split(ch).length-1;

}

/*** 检查是否由数字组成 ***/

String.prototype.isDigit = function() {

var s = this.Trim();

return (s.replace(/\d/g, "").length == 0);

}

/*** 检查是否由数字字母和下划线组成 ***/

String.prototype.isAlpha = function() {

return (this.replace(/\w/g, "").length == 0);

}

/*** 检查是否为数 ***/

String.prototype.isNumber = function() {

var s = this.Trim();

return (s.search(/^[+-]?[0-9.]*$/) >= 0);

}



/*** 返回字节数 ***/

String.prototype.lenb = function() {

return this.replace(/[^\x00-\xff]/g,"**").length;

}


/*** 检查是否包含汉字 ***/

String.prototype.isInChinese = function() {

return (this.length != this.replace(/[^\x00-\xff]/g,"**").length);

}


/*** 简单的email检查 ***/

String.prototype.isEmail = function() {

 var strr;

var mail = this;

 var re = /(\w+@\w+\.\w+)(\.{0,1}\w*)(\.{0,1}\w*)/i;

 re.exec(mail);

 if(RegExp.$3!="" && RegExp.$3!="." && RegExp.$2!=".")

strr = RegExp.$1+RegExp.$2+RegExp.$3;

 else

  if(RegExp.$2!="" && RegExp.$2!=".")

strr = RegExp.$1+RegExp.$2;

  else

 strr = RegExp.$1;

 return (strr==mail);

}


/*** 简单的日期检查,成功返回日期对象 ***/

String.prototype.isDate = function() {

var p;

var re1 = /(\d{4})[年./-](\d{1,2})[月./-](\d{1,2})[日]?$/;

var re2 = /(\d{1,2})[月./-](\d{1,2})[日./-](\d{2})[年]?$/;

var re3 = /(\d{1,2})[月./-](\d{1,2})[日./-](\d{4})[年]?$/;

if(re1.test(this)) {

p = re1.exec(this);

return new Date(p[1],p[2],p[3]);

}

if(re2.test(this)) {

p = re2.exec(this);

return new Date(p[3],p[1],p[2]);

}

if(re3.test(this)) {

p = re3.exec(this);

return new Date(p[3],p[1],p[2]);

}

return false;

}

/*** 检查是否有列表中的字符字符 ***/

String.prototype.isInList = function(list) {

var re = eval("/["+list+"]/");

return re.test(this);

}

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。



[2007 - 2011] © Leadnt.com