Ciao a tutti

ho una funzione che prende un valore da un campo, e lo converte in decimale ma mi da come errore undifined e non so perchè

codice:
<script language="JavaScript">
<!--
function conv_dec(a) {


var total = "" + (Math.round(a * 100) / 100); 
total += (total.indexOf('\.')<0)?'.00':'0';
total = total.substr(0,total.indexOf('\.')+3).replace("\.",",");

a=total

}
//-->
</script>


<INPUT name="importo_dare" type="text" onchange="if(this.value!=''){document.frmInsUsato.totale_dare.value=conv_dec(this);}">