js正则表达式的使用

JS中正则表达式有几种不同的使用方法,一些用法是通过字符串对象来使用,另外一些通过正则表达式对象使用。

一、RegExp(正则表达式)的属性和方法
1、属性
RegExp 的实例有几个只读的属性:
global表示是否为全局匹配,
igoreCase表示是否忽略大小写,
multiline表示是否为多行匹配,
source是正则式的源文本,如/[ab]/g的源文本就是[ab];
另外还有一个可写的属性是lastIndex,表示下次执行匹配时的起始位置。
2、方法
RegExp有两个方法exectest,均以待匹配的字符串为参数。
(1)exec
如果没有发现匹配则返回null,否则返回一个数组,该数组的第一项为匹配的字符串,接下去为与各个子表达式相匹配的子串;该数组的属性index表示发生匹配的位置,属性input表示被检索的字符串。
注意:如果正则式具有全局属性g,则执行一次exec后,该RegExp对象的lastIndex属性会被设为紧接着匹配子串的字符位置,当该RegExp对象再次调用exec时就会从lastIndex处开始执行匹配。如果exec没有发现任何匹配,它会将lastIndex设为0。当然,如果没有全局属性g的话,exec总是会将lastIndex设为0。
例如:
re = /[ab]+(c)+/g;
m = re.exec('acabcc');  // m[0]为'a', m[1]为'c', m.index为0,m.input为'acabcc',re.lastIndex为2
m = re.exec('acabcc');  // m[0]为'ab', m[1]为'cc', m.index为2,m.input为'acabcc',re.lastIndex为6
m = re.exec('acabcc');  // m为null,re.lastIndex为0
(2)test
test方法执行一次exec,如果发生匹配返回true,否则返回false。
因为test方法是调用exec的,所以也可以用test方法来遍历一个字符串。

二、和正则式相关的几个String(字符串)的方法
1、search(RegExp)
返回第一个与之匹配的子串的开始位置,如果没有匹配则返回-1。
传入的参数如果不是正则式则会传递给RegExp构造函数先转成正则式再进行匹配.
不支持全局匹配g
2、replace(RegExp, replacement)
第一个参数是正则式,第二个参数是要进行替换的字符串。
如果正则式指定了全局模式g,则会替换所有的匹配,否则只替换第一个匹配。replacement中的$符号具有特殊含义,$1,$2,...,$99 代表与正则式中的第1个到第99个子表达式相匹配的文本,$& 代表与正则式相匹配的文本,$` 代表位于匹配字串左侧的文本,$' 代表位于匹配字串右侧的文本,$$ 为直接量$
例如,想用花引号代替直引号,可用如下代码:
text.replace(/"([^"])*"/g, "``$1''")
另外,replacement也可是函数,传入的参数就是匹配的文本,返回替换的文本即可。
例如,将文本中每个单词的首字母改为大写字母:
text.replace(/\b\w+\b/g, function(word){return word.s str(0,1).toUpperCase()+word.s str(1);})
3、match(RegExp)
无匹配时返回null, 否则返回一个数组,该数组的内容取决于正则式是否具备全局属性g。如果没有全局属性g,则match的返回值和exec的返回值类似。如果具有全局属性g,则返回数组代表的是所有匹配的文本,而不含有任何子表达式匹配的信息,也没有index和input属性
4、split(delimiter, limit)
返回一个字符串数组,这些数组元素是通过从头到尾检索字符串中与delimiter相匹配的文本,在文本之前和之后分割原string得到,返回的子串中不包括定界符文本(注:当delimiter是包含子表达式的正则式时,返回数组中将包含与子表达式相匹配的文本,但是不包含与整个正则式相匹配的文本)。如果定界符与字符串的开头相匹配,则返回数组的第一个元素是空串;如果定界符与字符串结尾相匹配,则数组的最后一个元素是空串(注:如果delimiter是空串或与空串相匹配的正则式,那么字符串的每个字符之间都被分割,返回数组长度与原字符串长度一致,因为空串不匹配字符串的开头或结尾!
例如:"Hello<b>world</b>".split(/(<[^>]*>)/)
返回 ['Hello ', '<b>', 'world', '</b>', ''])。

 

 ==============================华丽丽的分割线======================================

 

JS正则表达式代码 
"^\\d+$"  //非负整数(正整数 + 0)     
"^[0-9]*[1-9][0-9]*$"  //正整数     
"^((-\\d+)|(0+))$"  //非正整数(负整数 + 0)     
"^-[0-9]*[1-9][0-9]*$"  //负整数     
"^-?\\d+$"    //整数     
"^\\d+(\\.\\d+)?$"  //非负浮点数(正浮点数 + 0)     
"^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$"  //正浮点数     
"^((-\\d+(\\.\\d+)?)|(0+(\\.0+)?))$"  //非正浮点数(负浮点数 + 0)     
"^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$" //负浮点数     
"^(-?\\d+)(\\.\\d+)?$"  //浮点数     
"^[A-Za-z]+$"  //由26个英文字母组成的字符串     
"^[A-Z]+$"  //由26个英文字母的大写组成的字符串     
"^[a-z]+$"  //由26个英文字母的小写组成的字符串     
"^[A-Za-z0-9]+$"  //由数字和26个英文字母组成的字符串     
"^\\w+$"  //由数字、26个英文字母或者下划线组成的字符串     
"^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+$"    //email地址     
"^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$"  //url     
"^[A-Za-z0-9_]*$" 
=================================================== 
<script lang ge="javascript">
function check(){
//var pattern1=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/;   //15位的身份证
//var pattern2=/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$/;   //18位的身份证
var pattern=/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;   //匹配E-MALI地址
//var pattern=/^http:\/\/([\w-]+\.)+[\w-]+(\/[\w-      .\/?%&=]*)?/;   //匹配网址
//var pattern=/http(s)?:\/\/([\w-]+\.)+[\w-]+(\/[\w- .\/?%&=]*)?/;   //匹配网址
//var pattern=/^[\一-\龥]$/;   //匹配中文字符(单个汉字)
//var pattern=/^[1-9]\d{5}(?!\d)$/;   //匹配邮政编码
//var pattern=/^[1-2][0-9][0-9][0-9]-[0-1]{0,1}[0-9]-[0-3]{0,1}[0-9]$/;   //匹配日期 如:1900-01-01
//var pattern=/^[^\x00-\xff]$/;   //匹配双字节字符(包括汉字在内的单个字符)
//var pattern=/^<(.*)>.*<\/\1>|<(.*) \/>$/;   //匹配HTML标记
//var pattern=/<(\S*?)[^>]*>.*?<\/\1>|<.*? \/>/;   //匹配HTML标记
//var pattern=/^\n[\s| ]*\r$/;   //可以用来删除空白行
//var pattern=/^(\s*)|(\s*)$/;   //可以用来删除行首尾的空白字符(包括空格、制表符、换页符等等)
//var pattern=/^[a-zA-Z][a-zA-Z0-9_]{4,15}$/;   //字母开头,限制5-16字节,允许字母数字下划线
//var pattern=/^\d{3}-\d{8}|\d{4}-\d{7,8}$/;   //匹配国内电话 如:0739-8888888(8) 或 020-88888888
//var pattern=/^[1-9][0-9]{4,}$/;   //匹配QQ号码 腾讯QQ号从10000开始
//var pattern=/^\d+\.\d+\.\d+\.\d+$/;   //匹配IP地址
/*******************匹配特定数字*********************/
//var pattern=/^(\w)\1{4,}*$/;   //匹配整数
//var pattern=/-?[1-9]\d*$/;   //匹配整数
//var pattern=/^[1-9]\d*$/;   //匹配正整数
//var pattern=/^-[1-9]\d*$/;  //匹配负整数
//var pattern=/^[1-9]\d*|0$/;   //匹配非负整数
//var pattern=/^-[1-9]\d*|0$/;   //匹配非正整数
//var pattern=/^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$/;   //匹配正浮点数
//var pattern=/^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$/;   //匹配负浮点数
//var pattern=/^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$/;   //匹配浮点数
//var pattern=/^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$/;   //匹配非负浮点数
//var pattern=/^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$/;   //匹配非正浮点数
/********************匹配特定字符串*****************/
//var pattern=/^[A-Za-z]+$/;   //匹配由26个英文字母组成的字符串
//var pattern=/^[A-Z]+$/;   //匹配由26个英文字母的大写组成的字符串
//var pattern=/^[a-z]+$/;   //匹配由26个英文字母的小写组成的字符串
//var pattern=/^[A-Za-z0-9]+$/;   //匹配由数字和26个英文字母组成的字符串
//var pattern=/^\w+$/;   //匹配由数字、26个英文字母或者下划线组成的字符串
//if(!(pattern1.test(document.form1.text.val)||pattern2.test(document.form1.text.val)))
if(!pattern.test(document.getElementById("content").val)){
alert("请输入正确的格式!");
return false;
}
}
</script>
<%
'限制只能输入中文:onkeyup="val=val.replace(/[^\一-\龥]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\一-\龥]/g,''))"
'限制只能输入全角字符:onkeyup="val=val.replace(/[^\?-\?]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\?-\?]/g,''))"
'限制只能输入数字:onkeyup="val=val.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"
'限制只能输入数字和英文:onkeyup="val=val.replace(/[\W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" 
%>

===================================================
/* 
*前台JS表单脚本(输入&验证)库

*注:请使用本JS表单脚本(输入&验证)库的同时保留此版权信息,此是作者花了时间去收集整理以及编写的,谢谢! 
*  此版本采用GB2312编码格式,请在使用前进行字符编码转换,以保证能够正常使用 
*/ 
/* 
*以下是库函数目录及使用说明: 

*常用 
*1、Trim=去除字符串前后空格         
使用方法:String.trim() 
*2、ctrim=去除字符串中间空格         
使用方法:String.ctrim() 
*3、onClickSelect=点中text框的时候,选中其中的文字     
使用方法:在input位置加上 onClick/onFocus="onClickSelect();" 即可


*动态输入类             
使用方法:在input位置加上 即可 
*1、TextOnly=只允许输入字母、数字、下划线 
*2、TextNumOnly=只允许输入字母、数字 
*3、NumOnly=只允许输入数字 
*4、TelOnly=只能输入电话、"-"、"("、")" 

*表单验证类 
*1、isAccount=是否帐号(由字母、数字、下划线组成){有两种选择,一种有长度限制} 
*2、isChinese=是否中文(由中文、数字、字母组成) 
*3、ismail=是否Email 
*4、isip=是否ip 
*5、PhoneCheck=电话号码检测(电话和手机) 
*6、isMobile=手机号码检测 
*7、isDate=是否短日期 
*8、isTime=是否时间 
*9、isDateTime=是否长日期 

*其它函数 
*1、changeFrame=改变Frame大小 
*2、CheckAll=全选/全不选 
*3、onKeyDownDefault=回车->转->Tab 
*4、admin_Size=改变TextArea输入框高度 

*其它验证正则表达式 
*Email : /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/ 
*Phone : /^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$/ 
*Url : /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/ 
*Currency : /^\d+(\.\d+)?$/ 
*Number : /^\d+$/ 
*Zip : /^[1-9]\d{5}$/ 
*QQ : /^[1-9]\d{4,8}$/ 
*Integer : /^[-\+]?\d+$/ 
*Do le : /^[-\+]?\d+(\.\d+)?$/ 
*English : /^[A-Za-z]+$/ 
*Chinese :  /^[\Α-\¥]+$/ 
*UnSafe : /^(([A-Z]*|[a-z]*|\d*|[-_\~!@#\$%\^&\*\.\(\)\[\]\{\}<>\?\\\/\'\"]*)|.{0,5})$|\s/ 
*Username : /^[a-z]\w{3,}$/i(用户名验证,带长度限制) 
*/

//=======================常用函数=============================
//----------------除去前后空格---------------- 
String.prototype.trim = function() 
{ 
    //用正则表达式将前后空格用空字符串替代。 
    return this.replace(/(^\s*)|(\s*$)/g, ""); 

//----------------除去中间空格---------------- 
String.prototype.ctrim = function() 
{ 
    //用正则表达式将中间空格用空字符串替代。 
return this.replace(/\s/g,''); 

//-----------------点中text框的时候,选中其中的文字--------------- 
/** 
*方法名:onClickSelect 
*描述:点中text框的时候,选中其中的文字 
*输入:空 
*输出:空 
**/
 
function onClickSelect() 
{ 
    var obj = document.activeElement; 
    if(obj.tagName == "TEXTAREA") 
{ 
        obj.select(); 

    if(obj.tagName == "INPUT" ) 
{ 
        if(obj.type == "text") 
   obj.select(); 

}

/* 
* 判断是否为数字,是则返回tr,否则返回false 
*/ 
代码 
function f_check_number(obj)     
{           
    if (/^\d+$/.test(obj.value))     
    {     
       return true;     
    }     
    else     
    {     
       f_alert(obj,"请输入数字");     
       return false;     
    }     
}     
   
/* 
* 判断是否为自然数,是则返回tr,否则返回false 
*/ 
代码 
function f_check_naturalnumber(obj)     
{           
    var s = obj.value;     
    if (/^[0-9]+$/.test( s ) && (s > 0))     
    {     
       return true;     
    }     
    else     
    {     
        f_alert(obj,"请输入自然数");     
        return false;     
    }     
}     
   
/* 
* 判断是否为整数,是则返回tr,否则返回false 
*/ 
代码 
function f_check_integer(obj)     
{           
    if (/^(\+|-)?\d+$/.test( obj.value))     
    {     
       return true;     
    }     
    else     
    {     
        f_alert(obj,"请输入整数");     
        return false;     
    }     
}     
   
/* 
* 判断是否为实数,是则返回tr,否则返回false 
*/ 
代码 
function f_check_float(obj)     
{           
    if (/^(\+|-)?\d+($|\.\d+$)/.test( obj.value))     
    {     
       return true;     
    }     
    else     
    {     
        f_alert(obj,"请输入实数");     
       return false;     
    }     
}    

 
//============================动态输入类函数=============================== 
//----------------只允许输入字母、数字、下划线(动态判断)----------------
function TextOnly(){ 
    var i= window.event.keyCode 
//8=backspace 
//9=tab 
//37=left arrow 
//39=right arrow 
//46=delete 
//48~57=0~9 
//97~122=a~z 
//65~90=A~Z 
//95=_ 
    if (!((i<=57 && i>=48)||(i>=97 && i<=122)||(i>=65 && i<=90)||(i==95)||(i==8)||(i==9)||(i==37)||(i==39)||(i==46))) 
{ 
        //window.event.keyCode=27; 
  event.returnValue=false 
  return false; 
    } 
else 
{ 
        //window.event.keyCode=keycode; 
  return true; 
    } 

//----------------只允许输入字母、数字(动态判断)---------------- 
function TextNumOnly(){ 
    var i= window.event.keyCode 
//8=backspace 
//9=tab 
//37=left arrow 
//39=right arrow 
//46=delete 
//48~57=0~9 
//97~122=a~z 
//65~90=A~Z 
//95=_ 
    if (!((i<=57 && i>=48)||(i>=97 && i<=122)||(i>=65 && i<=90)||(i==8)||(i==9)||(i==37)||(i==39)||(i==46))) 
{ 
        //window.event.keyCode=27; 
  event.returnValue=false 
  return false; 
    } 
else 
{ 
        //window.event.keyCode=keycode; 
  return true; 
    } 

//-----------------只允许输入数字(动态判断)---------------
/** 
*方法名:NumOnly() 
*描述:只允许输入数字 
*输入:空 
*输出:空 
**/ 
function NumOnly(){ 
    var i= window.event.keyCode 
//8=backspace 
//9=tab 
//37=left arrow 
//39=right arrow 
//46=delete 
//48~57=0~9 
    if ((i>57 || i<48) && (i!=8) && (i!=9) && (i!= 37) && (i!=39) && (i!=46)) 
{ 
        window.event.keyCode=27; 
  return false; 
    } 
else 
{ 
        //window.event.keyCode=keycode; 
  return true; 
    } 

//----------------只能输入电话号码或者"-"或者"("或者")"----------------
function TelOnly(){ 
    var i= window.event.keyCode 
//8=backspace 
//9=tab 
//37=left arrow 
//39=right arrow 
//46=delete 
//48~57=0~9 
//40=( 
//41=) 
//45=- 
//32=空格 
    if ((i>57 || i<48) && (i!=8) && (i!=9) && (i!= 37) && (i!=39) && (i!=46) && (i!=40) && (i!=41) && (i!=45) && (i!=32)) 
{ 
        window.event.keyCode=27; 
  return false; 
    } 
else 
{ 
        //window.event.keyCode=keycode; 
  return true; 
    } 

//===============动态输入函数(结束) =====================

//==============表单验证函数============================

//------判断用户名(判断字符由字母和数字,下划线,点号组成.且开头的只能是下划线和字母)--------
function isAccount(str) 
{ 
if(/^[a-z]\w{3,}$/i.test(str))   //用户名由字母和数字、下划线组成,且只能以字母开头,且长度最小为4位 
//if(/^([a-zA-z]{1})([\w]*)$/g.test(str))//用户名由字母和数字、下划线组成,且只能以字母开头 
{ 
  //alert(''); 
  return true; 

else 
  return false; 

//---------------判断只能输入中文、数字、字母----------------- 
function isChinese(str) 
{ 
var pattern = /^[0-9a-zA-Z\一-\龥]+$/i; 
if (pattern.test(str)) 
{ 
  return true; 

else 
{ 
  //alert("只能包含中文、字母、数字"); 
  return false; 


//--------------Email格式判断------------------ 
function ismail(email) 
{ 
return(new RegExp(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/).test(email)); 

//--------------IP格式判断------------------ 
function isip(s) 
{ 
var check=function(v) 
{ 
  try 
  { 
   return (v<=255 && v>=0) 
  } 
  catch(x) 
  { 
   return false 
  } 
}; 
var re=s.split(".") 
return (re.length==4)?(check(re[0]) && check(re[1]) && check(re[2]) && 

//----------------判断电话号码/手机号码----------------

function PhoneCheck(s) 
{ 
var str=s; 
var reg=/(^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)/; 
//alert(reg.test(str)); 
return reg.test(str); 

//--------------判断手机号码------------------ 
function isMobile(str) 
{       
var reg=/^0{0,1}13[0-9]{9}$/; 
return reg.test(str); 

//---------------短日期(如2003-12-05)-----------------
function isDate(str) 
{ 
var r = str.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/); 
if(r==null) 
{ 
  //alert('输入的信息不是日期格式(YYYY:MM:DD)'); 
  return false; 

if (r[1]<1 || r[3]<1 || r[3]-1>12 || r[4]<1 || r[4]>31) 
{ 
  //alert("日期格式(YYYY:MM:DD)不对"); 
  return false 

var d= new Date(r[1], r[3]-1, r[4]); 
return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]); 

var a = 
if (a == null) 
{ 
  //alert('输入的信息不是时间格式(HH:MM:SS)'); 
  return false; 

if (a[1]>23 || a[1]<0 || a[3]>60 || a[3]<0 || a[4]>60 || a[4]<0) 
{ 
  //alert("时间格式(0<=HH<23:0<=MM<60:0<=SS<60)不对"); 
  return false 

return true; 
}

var reg = 
var r = str.match(reg); 
if(r==null) 
{ 
  //alert('输入的信息不是时间格式(YYYY-MM-DD 
  return false; 

var d= new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]); 
return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()==r[7]); 
}

//=========================表单验证函数(结束)============================ 
//========================其它函数==============================
//用于改变当前后台框架的尺寸(参数:对象,关闭时显示图片,打开时显示图片,关闭显示尺寸,打开显示尺寸) 
//       例:this,'../images/openout.gif','../images/setby.gif','top.frame.cols=\'0,*\'','top.frame.cols=\'150,*\'' 
function changeFrame(ob,s1,s2,evalString1,evalString2) 
{ 
if (ob.alt == "收起") 
{ 
  ob.alt = "展开"; 
  ob.src = s1; 
  eval(evalString1); 

else 
{ 
  ob.alt = "收起"; 
  ob.src = s2; 
  eval(evalString2); 


//用于全选/全不选(参数form=表单) 
function CheckAll(form)     
{ 
  for (var i=0;i<form.length;i++)     
    {     
  var e = form; 
  if (e.type=="checkbox") 
  { 
   if (e.name!="AllChoice") 
   { 
    if (form.AllChoice.checked==tr) 
    { 
     if (e.disabled==false) e.checked=tr; 
    } 
    else 
    { 
     if (e.disabled==false) e.checked=false; 
    } 
   } 
  } 
    }     

//----------------- 用户在button以外的页面元素中按回车-->转换-->按tab键 --------------- 
/** 
*方法名:onKeyDownDefault 
*描述:用户在button以外的页面元素中按回车,转换为按tab键 
*输入:空 
*输出:空 
**/ 
function onKeyDownDefault() 
{ 
    if (window.event.keyCode == 13 && window.event.ctrlKey == false && window.event.altKey == false){ 
        if (window.event.srcElement.type != "button") 
            window.event.keyCode = 9; 
    } 
    else{ 
        return true; 
    } 

// 修改编辑栏高度 
function admin_Size(num,objname) 
{ 
var obj=document.getElementById(objname) 
if (parseInt(obj.rows)+num>=3) { 
  obj.rows = parseInt(obj.rows) + num; 

if (num>0) 
{ 
  obj.width="90%"; 


//取得字符串中中文/汉字的个数 
function getChineseNum(obstring) 
{ 
var pattern = /^[\一-\龥]+$/i; 
var maxL,minL; 
maxL = obstring.length;    //原始长度 
obstring = obstring.replace(pattern,""); 
minL = obstring.length;    //处理后的长度 
return (maxL - minL) 

//==================其它函数(结束)======================

验证是否是数字

<html xmlns="http://www.w3.org/1999/xhtml"> 
<body> 
<script lang ge="JavaScript"> 
function check(formname){ 
if (isNaN(document.all['price'].val)){ 
alert('请输入数字'); 
document.all["price"].focus(); 
return false; 

else{ 
if(document.all["price"].value !="") 
{ 
      alert('是数字,通过'); 
       return tr; 

else 
{ 
    alert('空直,'); 
       return true; 

  } 

</script> 
<form method="post" action=""> 
  <input type="text" > 
  <input type="s mit" value="提交" > 
  <input type ="text" /> 
</form> 
</body> 
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值