numberタイプのinput入力ボックスについては、入力ボックスの制限入力はinput[type='number']入力ボックスで、負、0、正の数のみ入力できます.小数点は2桁の小数点を保留します.

10016 ワード

numberタイプのinput入力ボックスについては、入力ボックスに入力し、jsとjqはnumberタイプのテキスト値を取得し、-番号が取得できないため、検査異常を引き起こし、完璧な解決方法でinputタイプを変換します.
<input type="number" class="fushu"/>
$(function(){
	 $(".fushu").focus(function () {
                $(this)[0].type = "text";  
    })
      $(".fushu").blur(function () {
                $(this)[0].type = "number";  
      })
      $('.fushu').bind('input propertychange', function () {
      	checkfushuInt($(this)[0]);
      })
})
//  
            window.checkfushuInt = function (obj) {
                obj.value = obj.value.replace(/[^-\d.]/g, ""); //  "-","  " "."     
                obj.value = obj.value.replace(/^[.]/, ""); //        .
                obj.value = obj.value.replace("-.", ""); //        -.
                obj.value = obj.value.replace(/\-{2,}/g, "-"); //      -,      
                obj.value = obj.value.replace("-", "$##$##$").replace(/\-/g, "").replace("$##$##$", "-");
                obj.value = obj.value.replace(/\.{2,}/g, "."); //      .,      
                obj.value = obj.value.replace(".", "$#$").replace(/\./g, "").replace("$#$", ".");
                obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3'); //        
            }