Sì, si può fare.
Posto un esempio dimostrativo completo. Vedi tu come meglio adeguarlo al tuo caso.
codice:
<!DOCTYPE HTML>
<html>
<head>
<title>Esempio</title>
<meta charset="utf-8">
<script type="text/javascript">
function formattaValore(){
risultato.value = parseFloat(Math.round(campo.value.replace(/,/g,".").replace(/\.(?=\d+)(?!\d*\s*$)/g,"")*100)/100).toFixed(2);
}
</script>
</head>
<body>
<label>Inserisci un numero <input id="campo" onBlur="formattaValore()" onInput="formattaValore()" placeholder="es: 123.456,78"></label>
<br><label>Risultato formattato <input id="risultato" readonly disabled></label>
</body>
</html>