JS+CSS設定text只能輸入數字

來源:互聯網
上載者:User
<SCRIPT LANGUAGE="JavaScript">

<!--

var isIE = false;

var isFF = false;

var isSa = false;


if ((navigator.userAgent.indexOf("MSIE")>0) && (parseInt(navigator.appVersion) >=4))isIE = true;

if(navigator.userAgent.indexOf("Firefox")>0)isFF = true;

if(navigator.userAgent.indexOf("Safari")>0)isSa = true;


function onlyNumber(e)
{
   
var key;
   
iKeyCode = window.event?e.keyCode:e.which;
   
if( !(((iKeyCode >= 48) && (iKeyCode <= 57)) || (iKeyCode == 13) || (iKeyCode == 46) || (iKeyCode == 45) || (iKeyCode == 37) || (iKeyCode == 39) || (iKeyCode == 8)))
   
{   
       
if (isIE)
        {
           
e.returnValue=false;
       
}
        else
        {
           
e.preventDefault();
       
}
    }
}

//-->

</SCRIPT>

<input type="text" onkeypress="return onlyNumber(event)">


另外一個:

=====================

<input type="text" onKeyUp="this.value=this.value.replace(/[^\.\d]/g,'');
if(this.value.split('.').length>2){
this.value=this.value.split('.')[0]+'.'+this.value.split('.')[1]}">
 <%= text_field_tag "close_sight",4,:onKeyPress => "return onlyNumber(event);", :style => "ime-mode:disabled"%>

//正整數 
 function onlyNum(obj){
    console.log(obj.value);
    obj.value = obj.value.replace(/[^\d]/gi, "");
}

//正、負整數
function numHasPlus(obj){
    //取第一位元字別人
    var t = obj.value.charAt(o);
   
    //替換掉不是數字部分
    var _value = obj.value.replace(/[^\d]/gi, "");
   
    //如果是負數
    if (t == '-') {
        _value = '-' + _value;
    }
   
    //頁面
    if (obj.value == _value)
        return;
    obj.value = _value;
}

//小數
function onlyFloat(obj){
    //    obj.value = obj.value.replace(/[^(?\d+)(\.\d+)?]/gi, "");
    var regex = /^[+|-]?\d*\.?\d*$/;
    if (regex.match(obj.value)) {
        return;
    }
    var o_value = obj.value.replace(/[^(?\d+)(\.\d+)?]/gi, "");
    if (o_value == '' || o_value == null) {
        obj.value = 0;
        return;
    }
    o_value = o_value.toString();
    var o_array = o_value.split('.');
    var m_value = 0.0;
    if (o_array.size() <= 1) {
        m_value = parseFloat(o_array[0]);
    }
    else {
        m_value = parseFloat(Nan(o_array[0] + '.' + o_array[1]));
    }
    if (obj.value == m_value)
        return;
    obj.value = m_value;
}



<INPUT CLASS="textbox" TYPE="text" STYLE="ime-mode:disabled">
不管你進來的時候是什麼IME,輸入的都是英文
ime-mode文法:
ime-mode : auto | active | inactive | disabled取值:auto :  預設值。不影響IME的狀態。與不指定 ime-mode 屬性時相同active :  指定所有使用IME輸入的字元。即啟用本地語言IME。使用者仍可以撤銷啟用IMEinactive :  指定所有不使用IME輸入的字元。即啟用非本地語言。使用者仍可以撤銷啟用IMEdisabled :  完全禁用IME。對於有焦點的控制項(如輸入框),使用者不可以啟用IME
text-transform文法:

text-transform : none | capitalize | uppercase | lowercase取值:none :  預設值。無轉換髮生capitalize :  將每個單詞的第一個字母轉換成大寫,其餘無轉換髮生uppercase :  轉換成大寫lowercase :  轉換成小寫
相關文章

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.