2016-05-12 14 views
1

私はtextboxを入力できます。ユーザーはnumbersしか入力できません。だから私は、下のリンクテキストボックスへの小数点の入力を無効にする

JS FIDDLE

と試みたが、まだ私は[挿入することができています。](10進数)を入力します。以下は、私が

$(".allownumericwithoutdecimal").on("keypress keyup blur",function (event) {  
     $(this).val($(this).val().replace(/[^\d].+/, "")); 
     if ((event.which < 48 || event.which > 57)) { 
      event.preventDefault(); 
     } 

テキストボックス

<igtxt:WebNumericEdit ID="txtNoofPages" Width="24%" runat="server" CssClass="allownumericwithoutdecimal"> 
      </igtxt:WebNumericEdit> 
+0

http://stackoverflow.com/questions/9204783/how-do-i-validate-a-decimal-field-with-jquery-and-regex – MusicLovingIndianGirl

+1

ユーザーフレンドリーではなく、値が無効であると思われる場合は画面上のヒントを表示して、ユーザー自身で修正するほうがずっと良いです。キーをスニッフィングしても、無効な値が貼り付けられたり、フィールドにドラッグアンドドロップされたりすることはありません。ああ、 '$(this).val()'は 'this.value'を行うのに非常に非効率的です。 – RobG

+0

@ MusicLovingIndianGirl:あなたが与えたリンクは '.'小数点を受け取ります。私はそれを望んでいない.. – BNN

答えて

1

私はあなたのFirefox、IEとクロームのブラウザで正常に動作しているJSフィドルを試してみましたものです。私はJQueryと同じ正規表現を使ってうまくいきました。キー入力いじり

$("#onlyNumber").on('keypress keyup blur', function(){ 
 
    $(this).val($(this).val().replace(/[^\d].+/, "")); 
 
     if ((event.which < 48 || event.which > 57)) { 
 
      event.preventDefault(); 
 
     } 
 
    
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<label>Number Only</label> 
 
<input type='textbox' id='onlyNumber'>

+0

これは答えになることはできません。代わりにOPのコードを確認するコメントがうまくいきます。 – niksofteng

+1

が試行されましたが、動作しません。 – BNN

+0

[WorksForMe](http://meta.stackexchange.com/questions/118992/are-works-for-me-answers-valid) –

関連する問題