Format Currency

rss

Posted by schuess - Feb 13 ’14 at 12:32

I am trying with no success to format a currency field on the new form. I would like it to either add the $ and commas during typing if possible. I have tried to use a popular jquery library called .formatCurrency(), but with no luck.

LInk to library: https://code.google.com/p/jquery-formatcurrency/

 

Error Message:

SCRIPT438: Object doesn't support property or method 'formatCurrency'"

 

Code Attempts:

//Format Currency Fields

$('.fd_field[fd_name="bidSecurityAmount"]').formatCurrency(); //using the library

 

//seperate attempt without the library

$('.fd_field[fd_name="bidSecurityAmount"]').text('$' + parseFloat(total, 10).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, "$1,").toString());

 

I referrenced the script library using a custom action with visual studio to deploy a script link

 

If you can help me in any way to try and apply currency formating to a field as the user types, that would be great. At the lease format the currency after they click off the field.

 

Thanks

  • Dmitry Kozlov
    Dmitry Kozlov
    Admin
    Member for: 7 years 8 days
    #1 by Dmitry Kozlov Feb 16 ’14 at 07:56

    Forms Designer includes JQuery library in compatibility mode, so, variables jQuery and $ are not defined globally. If you include additional plugins based on jQuery library and wish to use them on customized with Forms Designer forms only, you have to pass them $fd_jQuery variable instead of jQuery. So, please, open jquery.formatCurrency-1.4.0.js file and replace jQuery with $fd_jQuery.

    If you use your own jQuery library with formatCurrency plugin then call window.$.formatCurrency() function in JS-editor of Forms Designer.

  • schuess
    schuess
    Member
    Member for: 6 years 8 months 5 days
    #2 by schuess Feb 18 ’14 at 03:30

    The jQuery Plugin i want to use seems to want to format the input text box, but when i try and supply my field, i seem to be supplying the entire div/field.

     

    $('.fd_field[fd_name="bidSecurityAmount"]').change(function(){
    //fd.field('bidSecurityAmount').control()._el().value().formatCurrency();
    //$('.fd_field[fd_name="bidSecurityAmount"]').formatCurrency();
    //$('.fd_field[fd_name="bidSecurityAmount"]'.val()).formatCurrency();

    });

    the swtiching back and forth between js-framework and the plugin framework seems to be causing me trouble.

    how can i send the value of my input to a 3rd party plugin?

     

    thanks D.

     

    Matt

     

  • Dmitry Kozlov
    Dmitry Kozlov
    Admin
    Member for: 7 years 8 days
    #3 by Dmitry Kozlov Feb 19 ’14 at 04:12

    [#2]: Hi Matt,

    It seems, you should pass control to this plugin instead of just value. Try the following code:

    $('.fd_field[fd_name="bidSecurityAmount"] input').formatCurrency()
    
  • schuess
    schuess
    Member
    Member for: 6 years 8 months 5 days
    #4 by schuess Feb 19 ’14 at 09:28

    That worked perfectly.

     

    Would i have known that with a greater understanding of javascript or html or from a better understanding of js-framework?

     

     

  • Dmitry Kozlov
    Dmitry Kozlov
    Admin
    Member for: 7 years 8 days
    #5 by Dmitry Kozlov Feb 20 ’14 at 04:36

    [#4]: Of course, our framework is based on jQuery. So, I recommend you to start with javascript and jQuery smile

Displaying 1 to 5 of 5 messages