textbox非数字不能输入/求和/保留两位小数

onKeyPress="fun()"

 <td style="height: 23px; width: 55px;" align="center"> 单  价</td>                                   
                        
<td style="height: 23px; width: 108px;">
                                
<asp:TextBox ID="tbPrice"  Width="76px" runat="server" onKeyPress="JHshNumberText()" CssClass="input_text"></asp:TextBox>
                        
</td>
                        
<td  style="width:56px; height: 23px;" align="center">  数  量</td>                                  
                        
<td style="height: 23px">
                                
<asp:TextBox ID="tbNum"  Width="72px" runat="server"   onKeyPress="JHshNumberText()" CssClass="input_text"></asp:TextBox>
                        
</td>

 
<td style="height:23px; width: 56px;" align="center">金  额</td>
                        
<td style="height:23px" onKeyPress="JHshNumberText()">
                                
<asp:TextBox ID="tbAmount" Width="70px" runat="server" CssClass="input_text"></asp:TextBox>
                        
</td>

function JHshNumberText()
      
{
        
if ( !(((window.event.keyCode >= 48&& (window.event.keyCode <= 57)) 
        
|| (window.event.keyCode == 13|| (window.event.keyCode == 46
        
|| (window.event.keyCode == 45)))
        
{
        window.event.keyCode 
= 0 ;
        }

        }

this.tbPrice.Attributes.Add("onblur""javascript:getSum();");
          
this.tbNum.Attributes.Add("onblur""javascript:getSum();");
  function getSum()
         
{         
             
var price,num;
             price
=0;
             num
=0;
             
if(document.form1.tbPrice.value!="")
             
{
                 price
=document.form1.tbPrice.value;
             }

             
if(document.form1.tbNum.value!="")
             
{
                 num
=document.form1.tbNum.value;
             }

             document.form1.tbAmount.value
=cheng(num*price,2);
         }
  
        
function  cheng(num,n)  
        
{
               
var  dd=1;  
               
var  tempnum;  
               
for(i=0;i<n;i++)  
               
{  
                    dd
*=10;  
               }
  
               tempnum
=num*dd;  
               tempnum
=Math.round(tempnum);  
               
return (tempnum/dd);  
        }
  

posted on 2007-10-31 10:55  simhare  阅读(703)  评论(0)    收藏  举报

导航