<input name="textfield" type="text" size="13" onChange="Dchange(this.value,this.name);">
<script language="javascript">
function Dchange(s1,s2)
{
 if (s1.length > 13) 
 {
document.all.item(s2).value = "";
return false;
 }
 var strDate = s1;
 if (s1.length == 0)  return -1;
 var reg = /(\d{1,10})\.{0,1}(\d{0,2})$/
 var r = strDate.match(reg);
 
 if (r == null)
{
document.all.item(s2).value = "";

else
{

if (r[2]=="")
{
document.all.item(s2).value = s1+".00";
return true;
}
else
{
document.all.item(s2).value = s1;
return true;
}
}
}
</script>匆忙写的 没怎么测 看看对不对 如果还凑合就多给点分 嘿嘿

解决方案 »

  1.   

    改了一点~~:<input name="textfield" type="text" maxlength="13" onChange="Dchange(this.value);">
    <script language="javascript">
    function Dchange(s1)
    {
     if (s1.length > 13) 
     {
    document.all.textfield.value = "";
    return false;
     }
     var strDate = s1;
     if (s1.length == 0)  return -1;
     var reg = /(\d{1,10})\.{0,1}(\d{0,2})$/
     var r = strDate.match(reg);
     
     if ((r == null)||(s1>9999999999.99))
    {
    document.all.textfield.value = "";
    alert("数据错误!");

    else
    {

    if (r[2]=="")
    {
    document.all.textfield.value = s1+".00";
    return true;
    }
    else
    {
    document.all.textfield.value = s1;
    return true;
    }
    }
    }
    </script>
      

  2.   

    <input name="textfield" type="text" size="13" onChange="Dchange(this.value,this.name);">
    <script language="javascript">
    function Dchange(s1,s2)
    {
     var strDate = s1;
     if (s1.length == 0)  return -1;
     var reg = /^(\d{1,10})\.{0,1}(\d{0,2})$/
     var r = strDate.match(reg);
     alert(r);
     if (r == null)
    {
    document.all.item(s2).value = "";

    else
    {

    if (r[2]=="")
    {
    document.all.item(s2).value = s1+".00";
    return true;
    }
    else
    {
    document.all.item(s2).value = s1;
    return true;
    }
    }
    }
    </script>
    正则开始写的有点小错 现在好了吧
      

  3.   

    <input name="textfield" type="text" size="13" onChange="Dchange(this.value,this.name);">
    <script language="javascript">
    function Dchange(s1,s2)
    {
     var strDate = s1;
     if (s1.length == 0)  return -1;
     var reg = /^(\d{1,10})\.{0,1}(\d{0,2})$/
     var r = strDate.match(reg);
     if (r == null)
    {
    document.all.item(s2).value = "";
     alert("数据错误!");

    else
    {

    if (r[2]=="")
    {
    document.all.item(s2).value = s1+".00";
    return true;
    }
    else
    {
    document.all.item(s2).value = s1;
    return true;
    }
    }
    }
    </script>
    最终版 楼主直接拿去用吧  呵呵!
    记得给分 -_-