JS 屏蔽鍵盤 保留小數點後兩位

來源:互聯網
上載者:User

<script language="JavaScript">

function Check(theText)
{
 alert(window.event.keyCode);
}
function btnClick()
{
 alert(event.srcElement.type);//button
 alert(event.srcElement.tagName);//INPUT
 alert(event.srcElement.id);//btn
 alert(event.srcElement.name);//btn
 alert(event.srcElement.value);//確定
}

//控制輸入的形式為數值
function CheckNum(thetxtNum)
{
 var _value = thetxtNum.value;
 var kc=window.event.keyCode;
 
 if(kc==110 || kc==190)//如果是.
 {
  if(_value.length==0)//第一個不允許輸入。
  {
   alert("不能以小數點開頭!");
   window.event.returnValue = false;
   return;
  }
  if(_value.indexOf(".")>=0)//如果已經存在.
  {
   //window.event.keyCode=8;
   alert("不能再次輸入小數點!");
   window.event.returnValue = false;
   return;
  }
 }
 
 //alert(kc);
 if( (kc>=48 && kc<=57) || (kc>=96 && kc<=105) || kc==110 || kc==190)//如果是數字 或 .
 {
  window.event.returnValue = true;
  return;
 }
 else if(kc==8)//如果是退格
 {
  thetxtNum.select();
  thetxtNum.value="";
  thetxtNum.focus();
  window.event.returnValue = false;
  return;
 }
 else if(kc==13)
     {
         window.event.keyCode=9;
         window.event.returnValue = true;
         return;
     }
  else if(kc==9 || kc==45 || kc==46 || kc==16 || kc==17 || kc==18 || kc==20 || (kc>=112 && kc<=123))
     {
         window.event.returnValue = true;
         return;
     }
 else
 {
  //window.event.keyCode=8;
  alert("請輸入數字!");
  window.event.returnValue = false;
  return;
 }
}

//保留小數點後兩位
function Transfer(thetxtNum)
{
 var _value= parseFloat(thetxtNum.value);
 if(isNaN(_value))
     {
         return;
     }
 thetxtNum.value = _value.toFixed(2);
}

</script>

<input type=text id="txt" name="txt" onkeydown="Check(this)" />

<input type="button" id="btn" name="btn" value="確定" onClick="btnClick()" />

<br />

數值:<input id="txtNum" name="txtNum" type="text" size=50 onkeydown="CheckNum(this)" onblur="Transfer(this)" />
<input type="text" id="txtxxx" />

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.