1

次のコードを作成しました:

(function ($) {
     $(document).ready(function () {
         $('#custom_coverage').keyup(function () {
             this.value = this.value.replace(/[^0-9\.]/g, '');
         });
     });
 }(jQuery));

<input id="custom_coverage" class="restorable" type="text" data-original-value="100" value="100" name="custom_coverage">

スクリプトは正常に動作していますが、Chrome では、キーボードの -> または <- を使用して入力フィールド内でカーソルを移動できません。

誰?

4

1 に答える 1

0

値を変更しているため、カーソルは値の末尾に移動します。それが起こらないようにしたい場合は、更新を行うonChangeか、onBlur代わりに:

(function ($) {
     $(document).ready(function () {
         $('#custom_coverage').change(function () {
             this.value = this.value.replace(/[^0-9\.]/g, '');
         });
     });
 }(jQuery));

例はこちら

于 2013-06-07T09:55:26.417 に答える