se si copia e incolla col mouse basta fare il controllo anche sull'onchange
il punto iniziale io lo accetterei però se non ti garba
codice:
<input type="text" name="NomeText" onkeyup="this.value=this.value.replace(/,/g,'.').replace(/\./,'_').replace(/[^\d_]/g,'').replace(/_/,'.').replace(/^\./,'');" onchange="this.value=this.value.replace(/,/g,'.').replace(/\./,'_').replace(/[^\d_]/g,'').replace(/_/,'.').replace(/^\./,'').replace(/\.$/,'');">
Visti tutti quei replace sarebbe meglio fare una fuinzione e usare quella