如何比较textbox1.value=123,321,123.00 和textbox2.value=1.162.80 里面数字的大小,在js里面。。 谢谢指教了。

解决方案 »

  1.   

    parseInt() parseFloat()转化为数字再进行比较
      

  2.   

    <html>
    <head>
    <script language="javascript">
    function compare(){
     if(parseInt(document.form1.a.value) < parseInt(document.form1.b.value)){
      alert("a must more than b");
     }else{
      alert("ok");
     }}
    </script>
    </head>
    <form name=form1>
    <input name=a type=text/>
    <input name=b type=text/>
    <input type=button onclick="compare()" value="compare"/>
    </form>
    </html>
      

  3.   

    parseInt(textbox1.value)>parseInt(textbox2.value)
      

  4.   

    textbox2.value=1.162.80 是什么....看不懂
      

  5.   

    <SCRIPT LANGUAGE="JavaScript">
    var a = "123,321,123.00";
    var b = "1,162.80";
    a = Number(a.replace(/,/g,""));
    b = Number(b.replace(/,/g,""));
    if(typeof(a)!="number" || typeof(b)!="number")
    {
     alert("非数字");
    }
    else
    {
     if(a>b)
     {
      alert("a大于b");
     }
     else
     {
      alert("a小于b");
     }
    }
    </SCRIPT>
      

  6.   

    先用字符串替换函数replace把逗号替换成空字符串
    再使用parseInt/ParseFloat把字符串转成数字
    然后再比较
      

  7.   

    <head>
        <title>无标题页</title>
    <script language="javascript" type="text/javascript">
    // <!CDATA[function Button1_onclick()
    {
    s1=Text1.value.replace(',','');
    s2=Text2.value.replace(',','');
    numObj1 = new Number(s1);
    numObj2 = new Number(s1);
    if(numObj1>numObj2) alert(numObj1);
    else alert(numObj2);}// ]]>
    </script>
    </head>
    <body>
        <input id="Text1" type="text" />
        <input id="Text2" type="text" />
        <input id="Button1" type="button" value="button" onclick="Button1_onclick()" /></body>
      

  8.   


    这才是重点。。其实格式是一样的。。我的数据为什么会这样呢?因为我的程序里面显示这些数据的时候都加了个AAA.tostring("n");格式化了的。。
      

  9.   

    <SCRIPT LANGUAGE="JavaScript">
    var a = "123,321,123.00";
    var b = "1,162.80";
    a = Number(a.replace(/,/g,""));
    b = Number(b.replace(/,/g,""));
    var re = /\d+(.\d+)?/;
    if(!re.test(a)||!re.test(b))
    {
     alert("非数字无法进行比较");
    }
    else
    {
     if(a>b)
     {
      alert("a大于b");
     }
     else
     {
      alert("a小于b");
     }
    }
    </SCRIPT>
      

  10.   

    不好意思,刚才是打快了点,打错了。应该是下面的要求才对。
    如何比较textbox1.value=123,321,123.00 和textbox2.value=1,162.08 里面数字的大小,在js里面。。 谢谢指教了。
      

  11.   

    不好意思,刚才是打快了点,打错了。应该是下面的要求才对。
    如何比较textbox1.value=123,321,123.00 和textbox2.value=1,162.08 里面数字的大小,在js里面。。 谢谢指教了。
      

  12.   

    13楼答案可以,不要用s2=Text2.value.replace(',',''); 这是只替换第一个',',后面的不会理会的
      

  13.   

    为什么在asp.net中的js中,Number()函数不起作用啊 ?
      

  14.   

     var a = document.getElementById("tb_zfgyzcrmb").value;
            var b = document.getElementById("tb_zczbzusd").value;
            a =parseFloat(a.replace(/,/g,"")); 
            b =parseFloat(b.replace(/,/g,"")); 
       
          var re = /\d+(.\d+)?/; 
            if(!re.test(a)||!re.test(b)) 
            { 
            alert("非数字无法进行比较"); 
            } 
            else 
            { 
            if(a>b) 
            { 
            alert(a);
            alert(b);
              alert("a大于b"); 
            } 
            else 
            { 
            alert(a);
            alert(b);
               alert("a小于等于b"); 
            } 
            } 
      

  15.   

     我就不明白 这里re.test(b)) 的test(b)函数是哪里来的?是jsbenlai就自带的吗 ?不需要重写吗 ? 
      

  16.   

    test()是js中用来数字匹配的。
    正则表达式多看一下就知道了。
    互相学习
      

  17.   

    直接比较
    var a = document.getElementById("tb_zfgyzcrmb").value; 
            var b = document.getElementById("tb_zczbzusd").value; if (a>b)
    {
    alert("a大于b")}