?
Solved

FORMAT DECIMAL PLACES AND PAD  0's

Posted on 2008-10-01
2
Medium Priority
?
2,177 Views
Last Modified: 2010-04-21
Hi
I am using the following script's attached  to format decimal places and pad zeros.
Is there a way to combine both pieces of code. At present one will undo the other
What I need is if I enter 8 ,  On Change  It becomes 008.0000 or if I enter 89.9  On Change it becomes
089.9000


Decimal places          onchange="fix(this)" 
function fix(o){
 if( !isNaN(parseInt(o.value,10)) )
 {
    o.value = parseInt(o.value).toFixed(4);
 }
}
 
Pad zeros     onblur="padValue(this,3);"
function pad(num, count) {
 
var lenDiff = count - String(num).length;
 
var padding = "";
 
 
if (lenDiff > 0)
 
while (lenDiff--)
 
padding += "0";
 
 
return padding + num;
 
}
 
 
function padValue(el, count) {
 
var num = Number(el.value);
 
 
if ( isNaN(num) ) {
 
alert("Please only enter numbers");
 
} else {
 
el.value = pad(num, count);
 
}

Open in new window

0
Comment
Question by:Camnoc
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 29

Accepted Solution

by:
Göran Andersson earned 2000 total points
ID: 22612638
Use the following function like this:

onblur="formatField(this,4,8);"
function formatField(obj, decimals, len) {
   var n = Number(obj.value);
   if (!isNaN(n)) {
      var s = parseInt(n).toFixed(decimals);
      while (s.length < len) s = '0' + s;
      obj.value = s;
   } else {
      alert("Please only enter numbers");
   }
}

Open in new window

0
 

Author Closing Comment

by:Camnoc
ID: 31501886
Hi
Thanks very much. Much better code.

Thanks again
0

Featured Post

Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The task A number given should be formatted for easy reading by separating digits into triads. Format must be made inline via JavaScript, i.e., frameworks / functions are not welcome. So let’s take a number like this “12345678.91¿ and format i…
This article discusses how to create an extensible mechanism for linked drop downs.
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…
Suggested Courses

764 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question