読者です 読者をやめる 読者になる 読者になる

もなかアイスの試食品

「とりあえずやってみたい」そんな気持ちが先走りすぎて挫折が多い私のメモ書きみたいなものです.

AngularJSとAngularStrapでテキストボックスに数値しか入力できないようにする

少し前に似たようなことをやった

monakaice88.hatenablog.com

ただフォーマットが合っていない時だけメッセージを表示するだけだった

個人的にはそもそも数値しか入力できないようにしたい!

というわけで、Javascriptのサンプルを調べつつ、AngularJSとAngularStrapで作ってみた

※参考にしたサイト


「数値しか入力できないようにしたい!」機能のうち、全然関係がないコードがある。

var caretPosition = this.selectionStart;
this.value = this.value.replace(re, '');
this.selectionStart = caretPosition;
this.selectionEnd = caretPosition;

「this.value = this.value.replace(re, '');」の処理の影響で、数値以外の文字列やDelキー押した時に、カーソルが毎回一番後ろに移動する

それを防ぐために「selectionStart」と「selectionEnd」の値の再設定をやっている。

対応しているのは数値だけなので、実は使いドコロが少なかったりする・・・(・ω・`)