Non ho capito come chiami la funzione.
La funzione come la ho rifatta io ha bisogno di due parametri: l'oggetto campo e (opzionale) il messaggio di errore (stringa).
Il numero di decimali e` fisso a 0, 1 o 2, secondo quanto mi hai scritto sopra.
L'oggetto campo deve essere un oggetto input di tipo text o hidden (anche texarea va bene, ma non credo ti interessi).