目的
入力フォームに入れたデータが、半角の正の少数(正数も含)または負の少数(負数も含)どうか判断できます。
そうでない場合は、"偽(false)" を返します。
半角の正の少数(正数も含){負の少数(負数も含)}である場合、その値を戻します(文字列で返します)。
この処理は、0 以上かどうかの判断になっています。
参考:
利用している Java Script のメソッド
仕組み
このページのソースを見る。
HEAD タグの、moji_IsNumPM(チェックする文字列,オプション) 関数がメイン関数です。
注意としては、「JavaScript による入力フォームに正の整数(正数)かまたは、負の整数(負数)が入ったかどうかのチェック」の仕組みの項目。
オプションは、
- + : 正数(正の整数)かどうか判定する
- - : 負数(負の整数)かどうか判定する
moji_IsNumPM(チェックする文字列,オプション) 関数の仕組みは、
- オプションが正規かどうかチェック
- チェックする文字列が空文字列でない事を確認
- 文字列を少数点(.)を境に二つに分割
- 小数部の文字列が "0" ばかりであり、かつ
- 整数部が「JavaScript による入力フォームのデータが正の整数(正数)かまたは、負の整数(負数)どうかチェック」の「ゼロチェック」ルーチン SubChkZero() 関数によって "真" を得るならば、
- "0.0" を返す。
- そうではない場合、
- 整数部が符号だけ(または、空文字列)だった場合、"0" を追加して、
- 「JavaScript による入力フォームのデータが正の整数(正数)かまたは、負の整数(負数)どうかチェック」の「符号チェック」ルーチン SubChkKigo() 関数に処理を渡す。
- 真なら、小数部が "0" かどうか判定する。
(false の値が "0" なので、"false" か "0" なのか判定できないので先に行う)
(「JavaScript による入力フォームのデータが正の整数(正数)かまたは、負の整数(負数)どうかチェック」の「ゼロチェック」ルーチン SubChkZero() 関数 を使う)
(上記の関数でも、入力データに符号は含まれていないはずである)
- 小数部を「JavaScript による入力フォームのデータが正の整数(正数)かまたは、負の整数(負数)どうかチェック」の moji_IsInts() 関数に処理を渡す。
- 小数部の右側の "0" を削る
- 小数部が、数字であるならば、
- 整数部が "0" かどうか判定する。
(false の値が "0" なので、"false" か "0" なのか判定できないので先に行う)
(「JavaScript による入力フォームのデータが正の整数(正数)かまたは、負の整数(負数)どうかチェック」の「ゼロチェック」ルーチン SubChkZero() 関数 を使う)
(上記の関数でも、入力データに異なる符号は含まれていないはずである)
- 整数部を「JavaScript による入力フォームのデータが正の整数(正数)かまたは、負の整数(負数)どうかチェック」に処理を渡す
- 整数部、小数部ともに "偽" でなければ、整数部と小数部を結合して文字列として値を返す。
という感じです。
正の少数(正数も含)のチェック
負の少数(負数も含)のチェック
免責など
著作権は放棄します。
このプログラムを使用したことによって生じた、
いかなる損害についても責任は持ちません。
ソースコードについても、各自の責任において、
自由にいじってくれてもいいです。
動作環境
Netscape Navigator 3.x 以上、Internet Explorer 3.x で動作すると思います。
動作確認ブラウザ
- Netscape Navigator 3.04en for MS-Windows9x
- OK
- Netscape Communicator 4.6jp for MS-Windows9x
- ?
- Netscape Communicator 4.72jp for MS-WindowsNT4.0
- OK
- Netscape Communicator 4.75jp for MS-Windows2000
- OK
- Netscape 6jp for MS-Windows2000
- ?
- Internet Explorer 4.72.3110.1 SP1 for MS-Windows9x
- ?
- Internet Explorer 4.72.3110.8 SP1 for MS-WindowsNT4.0
- ?
- Internet Explorer 5.00.2314.1003 for MS-WindowsNT4.0
- OK
- Internet Explorer 5.00.2919.6307 for MS-WindowsNT4.0
- OK
- Internet Explorer 5.00.2920.0000 for MS-Windows9x
- OK
- Internet Explorer 5.00.2920.0000 for MS-Windows2000
- OK
- Netscape Communicator 4.7jp for MacOS9.04
- ?
- Netscape 6.1 for MacOS9.2.2 (J1-9.2.2 MacOSROM J1-8.8.1)
- OK
- Internet Explorer 5.0(2022) for MacOS9.2.2 (J1-9.2.2 MacOSROM J1-8.8.1)
- OK
- Netscape 6.2.1jp for MS-Windows2000
- OK
- Netscape 6.2.3jp for MS-Windows2000
- OK
- Opera (free) 5.12 build932 for MS-Windows2000
- OK
- Mozilla 0.9.9 for RedHat Linux7.3
- OK
- Netscape Communicator 4.79Jp for RedHat Linux7.3
- OK
mail to active@window.goukaku.com