<script language="JavaScript">
<!--
function myGo(theForm)
{
  var iCapitalNum = theForm.CapitalNum.value;
  var iCount = 0;
  var jCount = 0;
  var strContractCode = theForm.ContractCode.value;   if(iCapitalNum.length == 0)
    {
        alert("请填写金额!");
        return false;
    }
    for(var i=0;i<iCapitalNum.length;i++)
    {
        if(iCapitalNum.charAt(i) == '.')
            iCount++;
        if((iCapitalNum.charAt(i) < '0' || iCapitalNum.charAt(i) > '9') && iCapitalNum.charAt(i) != '.')
        {
            alert("金额填写不正确!");
            return false;
        }
    }
    if(iCapitalNum.charAt(0) == '.' || iCapitalNum.charAt(iCapital.length-1) == '.' || iCount > 1)
    {
        alert("金额填写不正确!");
        return false;
    }    return true;
}

解决方案 »

  1.   


    function checkmoney(){
    if(!isReal(document.dataform.money.value)){
    alert("输入错误!");
    return false;
    document.dataform.money.focus();
    }
    }
    //测试是否为实数
    function isReal(inputVal){    var obj;
    var inputStr;
        obj=0;
    inputStr=inputVal.toString(); for (var i=0;i<inputStr.length;i++)
    {
    var oneChar=inputStr.charAt(i);
        if (i!=0 && oneChar=="." && i!=inputStr.length-1)
        {
    ++obj;
    continue;
        }
    if (i!=0 && i!=inputStr.length-2 && (oneChar=="E" || oneChar=="e"))
        {    
    twoChar=inputStr.charAt(i+1)
    if(twoChar=="-"||twoChar=="+")
    {
                    i++;
    continue;
    }else{
                    return false;
    }
    }
    if (oneChar!=".")
    {
    if (oneChar<"0" || oneChar>"9")
    {
      return false;
    }
    }
    } if (obj!=1)
    {
    return false;
    } return true;}//测试是否为负实数.
    function isPosReal(inputVal){    var obj;
      var inputStr;
        obj=0;
    inputStr=inputVal.toString();
    for (var i=0;i<inputStr.length;i++)
    {
    var oneChar=inputStr.charAt(i);
        if (i==0 && oneChar=="-")          //&Aring;&ETH;&para;&Iuml;&Ecirc;&Ccedil;·&ntilde;&Icirc;&ordf;&cedil;&ordm;
        {
    continue;
        }
        if (i!=0 && oneChar=="." && i!=inputStr.length-1)
        {
    ++obj;
    continue;
        }
    if (i!=0 && i!=inputStr.length-2 && (oneChar=="E" || oneChar=="e"))
        {    
    twoChar=inputStr.charAt(i+1)
    if(twoChar=="-"||twoChar=="+")
    {
                    i++;
    continue;
    }else{
                    return false;
    }
    }
    if (oneChar!=".")
    {
    if (oneChar<"0" || oneChar>"9")
    {
      return false;
    }
    }
    } if (obj!=1)
    {
    return false;
    } return true;}<input type="text" name="money" >
      

  2.   

    <script language="JavaScript">
    function f_check(obj){
      if(obj.value.match(/\d+.\d{2}/)){
        return true;
      }
      alert("货币格式不正确,请重新输入");
      obj.value="";
      return false;}
    </script><input type=text name=text1 value="" onblur="return f_check(this);">
      

  3.   

    如果是只要能输入数字和小数点就可以了,就用不着那么复杂了嘛。下面一段代码试试看。
    <input type="text" name="jiage" size="47" onkeypress="if((event.keyCode<45 || event.keyCode>57) && event.keyCode!=46) event.returnValue=false;">
      

  4.   

    <input type=text onblur="alert(/^[\d]+\.?\d*$/.test(this.value)?'输入正确':'您的输入有误')">
      

  5.   

    感觉还是 Go_Rush(阿舜) 的最好,用到了正则表达式。。学习学习。。
    我稍微该了下,现铁出:
    <input type=text name= caolig value ="" onblur="if (!(/^[\d]+\.?\d*$/.test(this.value)) ){alert('您的输入有误'); this.value='';this.focus();}">