CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Web 开发 >  JavaScript

一个检查email是否输入正确的程序,有不明白的地方,指教!!!

楼主weilong608()2005-04-04 18:42:40 在 Web 开发 / JavaScript 提问

fuction   isEmail(theStr)  
  {  
  var   atIndex=theStr.indexOf('@');//这里面的index是什么意思  
  var   dotIndex=theStr.indexOf('.',atIndex);//括号里面是什么意思?  
  var   flag=true;  
  theSub=theStr.substring((),dotIndex+1);//括号里面的是什么意思?substring()是什么意思?  
   
  if((atIndex<1)||(atIndex!=theStr.lastIndexOf('@'))||(dotIndex<atIndex+2)||  
   
  (theStr.length<=theSub.length))//解释一下if括号里面的是什么意思?  
  {flag=false;}  
  else  
        {flag=true;}  
   
  return(flag);  
  } 问题点数:0、回复次数:6Top

1 楼steedhorse(晨星)回复于 2005-04-04 18:55:39 得分 0

(1)在theStr中查找第一个'@'字符的下标;  
  (2)从atIndex开始,在theStr中查找第一个'.'字符的下标;  
  (3)你抄错了吧?我觉得应该是theSub=theStr.substring(0,dotIndex+1);substring就是“子字符串”的意思,这里提取出thStr中'.'之前的子串。  
  (4)  
  (atIndex<1):说明里边没有'@'这个字符;  
  atIndex!=theStr.lastIndexOf('@'):第一个'@'的位置跟最后一个'@'的位置不想等,说明theStr中有多个'@'  
  dotIndex<atIndex+2:说明'@'后面的'.'紧跟在'@'后面了;  
  theStr.length<=theSub.length:说明最后一个符号就是'@'之后的第一个'.',显然也是不合法的。Top

2 楼steedhorse(晨星)回复于 2005-04-04 18:56:04 得分 0

你怎么基本的都不知道也不着本书来看看啊?Top

3 楼faisun(暖阳)回复于 2005-04-04 20:04:20 得分 0

这个方法太麻烦了,都用正则表达式验证了:  
   
  <html>    
       <head>    
        <script   language="Javascript1.2">    
         <!--   start   hiding    
         function   verifyAddress(obj)    
       {    
        var   email   =   obj.email.value;    
        var   pattern   =   /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+/;    
        flag   =   pattern.test(email);    
        if(flag)    
        {    
         alert('Your   email   address   is   correct!');    
         return   true;    
        }    
        else    
         {    
          alert('Please   try   again!');    
          return   false;    
            }    
          }    
         //   stop   hiding   -->    
        </script>    
     </head>    
       <body>    
       <form   onSubmit="return   verifyAddress(this);">    
     email:<input   name="email"   type="text">    
     <input   type="submit">    
     </form>    
    </body>    
   </html>Top

4 楼weilong608()回复于 2005-04-04 22:23:12 得分 0

var   atIndex=theStr.indexOf('@');//这里面的index的下标是不是从0开始的?  
  var   dotIndex=theStr.indexOf('.',atIndex);//  
  var   flag=true;  
  theSub=theStr.substring(0,dotIndex+1);//括号里面的是不是     大于等于0而小于dotIndex+1(没有取等号)  
  Top

5 楼ccxxcc(cc小超)回复于 2005-04-04 23:00:48 得分 0

markTop

6 楼faisun(暖阳)回复于 2005-04-04 23:11:08 得分 0

strObj.indexOf(subString[,   startIndex])  
   
  参数  
  strObj  
  必选项。String   对象或文字。  
  subString  
  必选项。要在   String   对象中查找的子字符串。  
  starIndex  
  可选项。该整数值指出在   String   对象内开始查找的索引。如果省略,则从字符串的开始处查找。  
   
  strVariable.substring(start,   end)  
  start  
  指明子字符串的起始位置,该索引从   0   开始起算。  
  end  
  指明子字符串的结束位置,该索引从   0   开始起算。  
   
  stringvar.substr(start   [,   length   ])  
  stringvar  
  必选项。要提取子字符串的字符串文字或   String   对象。  
  start  
  必选项。所需的子字符串的起始位置。字符串中的第一个字符的索引为   0。  
  length  
  可选项。在返回的子字符串中应包括的字符个数。  
   
   
   
   
  Top

相关问题

  • 求助!!怎样检查用户输入字段的类型是否正确呢?
  • 如何检查Text中输入的是正确的日期,即数据的合法性检查?
  • 在Java程序中怎样动态的检查SQL语句是否正确?
  • 一个简单的问题!编段程序检查表达式的正确性!
  • 为什么我的检查表单程序只执行最后一个输入框的检查程序呢 在线等待 行就给分
  • 请教各位大哥们如果检查输入的邮件地址是否正确..
  • 程序错误检查
  • 登陆检查有错,但在IE中没有script错误提示,但所有输入正确还是会有密码错误提示
  • 在delphi加载.dll时,出现“不能正确定位程序中动态连接库的输入点”请问这种错误是怎么回事。
  • 如何即输入即检查

关键词

得分解答快速导航

  • 帖主:weilong608

相关链接

  • Web开发类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo