小数値で先頭が.だったら0を加える


動作ブラウザ 【 IE:3.0   NN:2.0
Internet Explorer Netscape Navigator Opera iCab Safari
3.0x 4.0x 4.5 5.0x 5.5 6.0 2.0x 3.0x 4.0x 4.x 6.0 7.0 7.x 2.x 1.x
Windows - -
Macintosh -
UNIX - - - - - -

ポイント n = eval(document.myFORM.num.value); n += ""; if (n.charAt(0) == ".") n = "0"+n;
説  明 NNでは値が1未満の場合、数値を表示すると.25のように先頭の0が省略されて表示されます。IEでは0.25のように0が表示されます。IEのように先頭に0を付加するにはn+=""として一度文字列に変換しcharAt(0)で先頭の文字が.かどうかを調べます。.であれば0を付加します。
サンプル <html> <head> <title>小数値で先頭が.だったら0を加える</title> <script language="JavaScript"><!-- function addZero() { n = eval(document.myFORM.num.value); alert("処理前"+n); n += ""; if (n.charAt(0) == ".") n = "0"+n; if ((n.charAt(0) == "-") && (n.charAt(1) == ".")) n = "-0"+n.substring(1,999); alert("処理後"+n); } // --></script> </head> <body> <form name="myFORM"> 小数値:<input type="text" name="num"><br> <input type="button" onClick="addZero()" value="0を付加"> </form> </body> </html>
補足説明 なし

■サンプルスクリプトを実行する >>実行
■各ブラウザでの動作結果を見る >>View!

写真素材 PIXTA