Solved

How to do currency validation that also allowed to put negative at infront.

Posted on 2008-10-13
1
547 Views
Last Modified: 2012-05-05
Hi,

For the below Java sctipt, How can I modify it so that my input will allowed me to put the negative sign "-" at the begining?

<html>
<head>
      <title>Test Page</title>

      <script language="JavaScript">
     
      function main()
      {
            document.getElementById("price").focus();
      }

      function parseCurrency(field)
      {
            var currency = /^\d*(?:\.\d{0,2})?$/;
            var onlyCurrency = /^(\d*(?:\.\d{0,2})?)[\s\S]*$/;
           
            if(!currency.test(field.value))
            {
                  field.value = field.value.replace(onlyCurrency, "$1");
            }
      }
     
      </script>
</head>

<body onload="javascript:main();">

      $ <input type="text" id="price" name="price" onKeyUp="javascript:parseCurrency(this);" onChange="javascript:parseCurrency(this);">

</body>
</html>
0
Comment
Question by:runbird
1 Comment
 
LVL 16

Accepted Solution

by:
Lolly-Ink earned 200 total points
ID: 22708246
Add the minus sign to the 2 regular expressions:
<html>

<head>

      <title>Test Page</title>
 

      <script language="JavaScript">

      

      function main()

      {

            document.getElementById("price").focus();

      }
 

      function parseCurrency(field)

      {

            var currency = /^\-?\d*(?:\.\d{0,2})?$/;

            var onlyCurrency = /^(\-?\d*(?:\.\d{0,2})?)[\s\S]*$/;

            

            if(!currency.test(field.value))

            {

                  field.value = field.value.replace(onlyCurrency, "$1");

            }

      }

      

      </script>

</head>
 

<body onload="javascript:main();">
 

      $ <input type="text" id="price" name="price" onKeyUp="javascript:parseCurrency(this);" onChange="javascript:parseCurrency(this);">
 

</body>

</html>

Open in new window

0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

In Part 1 (http://www.experts-exchange.com/Programming/Languages/Scripting/JavaScript/A_7849-Hex-Maze.html) we covered the hexagonal maze basics -- how the cells are represented in a JavaScript array and how the maze is displayed.  In this part, we'…
This article demonstrates how to create a simple responsive confirmation dialog with Ok and Cancel buttons using HTML, CSS, jQuery and Promises
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…

867 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

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now