<script>
function isnumber(str){
var digits = "1234567890";
var i = 0;
var strlen = str.length;
while((i<strlen)){
var char = str.charAt(i);
if(digits.indexOf(char) == -1) {
alert("不合法");
}
i++;
}
alert("合法");
}
isnumber("df2423");
</script>

解决方案 »

  1.   

    小数
    re = /^\d+\.\d*$/;url地址
    re = /^http:\/\/[0-9a-zA-Z\-\.]+[a-zA-Z]{2,3}$/;
      

  2.   

    小数
    re = /^\d+\.\d*$/;url地址
    re = /^http:\/\/[0-9a-zA-Z\-\.]+[a-zA-Z]{2,3}$/;
      

  3.   

    改了一下,支持浮点:
    <script>
    function isnumber(str){
    var digits = "1234567890.";
    var i = 0;
    var dot = 0;
    var strlen = str.length;
    while((i<strlen)){
    var char = str.charAt(i);
    if (char == ".") {
    dot = dot + 1;
    if (dot > 1) {
    alert("不合法");
    return false;
    }
    }
    if(digits.indexOf(char) == -1) {
    alert("不合法");
    return false;
    }
    i++;
    }
    alert("合法");
    return true;
    }
    isnumber("24.23");
    </script>
      

  4.   

    改了一下,支持浮点:
    <script>
    function isnumber(str){
    var digits = "1234567890.";
    var i = 0;
    var dot = 0;
    var strlen = str.length;
    while((i<strlen)){
    var char = str.charAt(i);
    if (char == ".") {
    dot = dot + 1;
    if (dot > 1) {
    alert("不合法");
    return false;
    }
    }
    if(digits.indexOf(char) == -1) {
    alert("不合法");
    return false;
    }
    i++;
    }
    alert("合法");
    return true;
    }
    isnumber("24.23");
    </script>
      

  5.   

    isNaN(parseInt(digit)),返回true不是整形,返回false是整形
      

  6.   

    kingerq(多菜鸟)先生:
    re到底是个什么对象
    我的机器需要安装什么东西吗
    你的方法没有奏效
      

  7.   

    frankspy(跑) 的方法才是简单且完整的
      

  8.   

    我觉得应该用正则表达式 isNaN(parseInt("12abc",10))=false
    显然也无法判断
      

  9.   

    整数
    re = /\d+/;re.test("12abc",10)=true这是怎么回事???
      

  10.   

    <script language="JavaScript">
    <!--
    //** power by fason
    function isInt(val)
    {
    return !isNaN(parseInt(val,10))&&!/[^0-9e]/ig.test(val)
    }
    alert(isInt("123"));
    alert(isInt("123a"));
    alert(isInt("123e2"));//指数
    alert(isInt("123.123"));
    //-->
    </script>
      

  11.   

    引用:
    kingerq(多菜鸟)先生:
    re到底是个什么对象
    我的机器需要安装什么东西吗
    你的方法没有奏效
    不是吧,这个都不知道,怪不得我的你不会用了。
    我第一个发出去的里也有一个re变量啊,这是定义正则的。
      

  12.   

    好像正则表达式也不能整个匹配判断,而是判断是否包含:
    test方法:返回一个 Boolean 值,它指出在被查找的字符串中是否存在模式。
    注意,是“是否存在模式”。所以我把manyou(他山之石)的函数改造了一下,直接返回布尔值,以判断是否整数:function isnumber(str)
    {
    var digits = "1234567890";
    var i = 0;
    var strlen = str.length;
    while((i<strlen))
    {
    var char = str.charAt(i);
    if(digits.indexOf(char) == -1)
    {
    //alert("不合法");
    return false;
    }
    i++;
    }
    //alert("合法");
    return true;
    }