if(dig<"0" || dig>"9"){
                            alert('输入的必须为数字');
                            return false;
                            }
这里的字符串也可以做比较的吗?
dig=num.charAt(i); //这个是返回字符串的吗?
假如在框里输入英文"sdsd",那"sdsd" < "0"  这样可以的吗?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript">function checknum(){
       var dig,count=0;
       var num=document.form1.text3.value;
       if(num==""){
              alert('请输入数字')
              }
       else{
              for(i=0;i<num.length;i++){
                     dig=num.charAt(i);
                     if(dig<"0" || dig>"9"){
                            alert('输入的必须为数字');
                            return false;
                            }
              }
       }
}function checktext3(){
       document.form1.text3.value="";       
}
</script><style type="text/css"></style>
</head><body>
<form name="form1">
    <p>检查是否有数字:
    <input type="text" name="text3" value="请输入数字" onclick="checktext3()" />
    <input type="button" name="button3" value="检查是否有数字" onclick="checknum()"/>
    </p>
</form>
</body>
</html>

解决方案 »

  1.   

    if(dig<"0" || dig>"9"){
      alert('输入的必须为数字');
      return false;
      }你比较的是数字?那0是不应该加“”,变成字符串间的比较了,比较的是ASCII值,要想限制输入是数字,可以采用正则实现:/^[0-9]*$/ 
      

  2.   

    这里的字符串也可以做比较的吗?
    dig=num.charAt(i); //这个是返回字符串的吗?
    假如在框里输入英文"sdsd",那"sdsd" < "0" 这样可以的吗?
    -------------
    1.可以
    2.返回一个字符串num中索引为i的字符
    3.可以,返回的是false//验证数字
    function IsNum(num){ 
     var reNum=/^\d*$/; 
     return(reNum.test(num)); 
    }
    alert(IsNum('er'));//false
    alert(IsNum(5));//true