0

フォーラムで検索しましたが、正しい答えが見つかりませんでした。私がしようとしているのは

  1. 10 進数を受け入れるテキスト ボックス。ユーザーは 0 または 1 の小数点を入力できる必要があります。ドット(。)
  2. ドットの前の最大 5 桁とドットの後の最大 5 桁
  3. 他の文字は許可されませんが、矢印キーや f1 f2 などの他のキーは機能するはずです

例えば。次の 12345 12345.1 12345.12345 1.12345 .12345 に対して有効である必要があります。

このテキストボックスの作成に助けが必要です。

4

1 に答える 1

0

これを試して:

function isFloat(s) {
    return s ? /\d{1,5}(?:\.\d{1,5})?/.test(s) : true;
}


$('input.float').on('change', function() {
  if (!isFloat($(this).val())) {
    alert('not a float');
  }
});

そして、これがフィドルです:http: //jsfiddle.net/foxbunny/Vabj4/

コードはフィールドを必須にしません。空の場合は、合格します。true(2行目)に条件付きの三項を変更することでそれを変更できる場合false

編集:

ああ、特定のキーへの入力を制限したい場合は、再考する必要があります。あまり良いユーザーエクスペリエンスではありません。人々はほとんど何でもタイプすることに慣れています。ただ警告するのが最善です。行うのが安く、十分に効果的です:

http://jsfiddle.net/foxbunny/Vabj4/1/

于 2012-12-29T13:10:27.487 に答える