0

いくつかの調査を行っていますが、私にとっての解決策は見つかりませんでした。基本的に、計算に数値入力を必要とする小さな管理セクションがあります。数字のみ。ただし、ユーザーは$または%文字を含めてコピーして貼り付けることができる場合があります。

今、私はこれを見つけました:入力フィールド、数字のみjquery / js

$("input[type=text]").keypress(function (e){
  var charCode = (e.which) ? e.which : e.keyCode;
  if (charCode > 31 && (charCode < 48 || charCode > 57)) {
    return false;
  }
});

これはタイピング中に完全に機能しますが、ユーザーが「$ 1230」をコピーして貼り付けると、そこに$が保持されます。オートストリッピングしたいのですが…。

それで、基本的に、私は「falseを返す」の代わりに、ある種の「交換」が必要だと考えていますか?それが最善の方法でしょうか?

4

1 に答える 1

2

onの代わりにkeypress、との両方のイベントで使用keypresschangeます。

$("input[type=text]").on("keypress change", (function (e){
  var charCode = (e.which) ? e.which : e.keyCode;
  if (charCode > 31 && (charCode < 48 || charCode > 57)) {
    return false;
  }
});
于 2012-08-06T16:07:43.033 に答える