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

因为您正在更改值,所以光标将移动到值的末尾。如果您想阻止这种情况发生,请执行更新onChangeonBlur改为:

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

这里的例子

于 2013-06-07T09:55:26.417 回答