2010-11-26 7 views
1

私は特定のテキストフィールドに数字だけを入力するスクリプトをmineのWebアプリケーションに用意しています。しかし、適切なテキストフィールドが選択されると、スクリプトは数字キーとタブ以外のキーボード入力をブロックします。私は数値フィールドに入力しているだけなので、ユーザーがブラウザやアプリケーションのキーボードショートカットを使用できないように制限したくありません。 (数字入力を防止する代わりにフィールドを検証するだけでなく、数値入力ライブに基づいてページを更新するので、いいとは限りません)JavaScript番号のみのスクリプト(キーボードショートカットを使用しない)

誰かが書き込み/私のための小さなスクリプトを見つける?これらの数字の単純なバリエーションは、モディファイアキーが押されたときに上書きできるだけで十分です(また、上書きされた文字も削除する必要があります)。

+0

のonchange使用、および(ますisNaN(値))の場合 – lock

答えて

2

私はあなたのためのスクリプトを記述するつもりはないが、私はあなたにいくつかの擬似擬似コードをあげる:

input = input.replace(/\D/, ''); 
+0

私はそれを試してみましたし、何らかの理由で動作するようには思えません。それは良いアイデアのように見えます。 –

+0

@the私はあなたのコードを見ることなくそれに答えることはできません。 – deceze

+0

これは、私はJavaScriptを学んでいるので、これは愚かなエラーであることが判明したのでごめんなさい:onChange = "this.value = this.replace(/ \ D \、 '')" onChangeは起動しませんテキストフィールドがフォーカスを失うまで、何も起こらず、フィールドに文字を残すことができます。 –

0

はYAV、Javascriptのバリデータライブラリを試してみてください。
マスク機能が必要だと思います。この例からフィールドCustom:

+0

これはうまく見えますが、カスタムテキストフィールドの入力中にブラウザのキーボードショートカットを使用することはできません。このライブラリのより高度なマスクを通してこれを許可できますか? –

+0

キーボードショートカットを教えてもらえますか? – diewland

関連する問題