貼り付け時に発生するイベントリスナーを持つ入力ボックスがあります。
$("#UserInput").on('paste', function(e){
});
私は12または12.12が有効になりますが、#12や12.12.12はないだろう、有効数字以外のものを貼り付けからユーザーを防ぐために望んでいました。だから私はこれを書いた
var pasteData = '';
if(window.clipboardData && window.clipboardData.getData){
pasteData = window.clipboardData.getData('Text');
console.log('window.clipboardData');
}
else{
pasteData = e.originalEvent.clipboardData.getData('text');
console.log('e.clipboardData');
}
if(isNaN(pasteData)){
e.preventDefault();
console.log(pasteData + ' NOT allowed');
}
else{
console.log(pasteData + ' allowed');
}
これは素晴らしい作品です。しかし、ドル記号とカンマも貼り付けることができます。 $ 12と$ 12,000はうまくいくが、$ 12.12.12はうまくいかない。既存のコードを保持する最良の方法はありますが、適切な場所に1つのドル記号とコンマが含まれている貼り付けられた値を許可しますか?
タイプを解決する方法である=数は、ニーズのほとんどを処理します。次に、貼り付けイベントの通貨記号とコンマを取り除くだけです。 –
この場合、これはオプションではありません。 – onTheInternet
下の票を私に説明してもらえますか?これがどのようにルールに従わないのか分かりません。 – onTheInternet