grazie per il bravissimo, troppo buona

per farlo andare anche con la virgola ce vo' na modifica
codice:
<script language="javascript">
function ControlloNumero(obj){
	var segno = '';
	if (obj.value.substr(0,1)=='-') segno = '-';
	obj.value=obj.value.replace(/\./g,',');
	var arr = obj.value.split(',');
	valore = arr[0];
	valore = valore.replace(/[^\d]/g,'').replace(/^-/g,'').replace(/^0+/g,'');
	nuovovalore='';
	while(valore.length>3){
		nuovovalore='\''+valore.substr(valore.length-3)+nuovovalore
		valore = valore.substr(0,valore.length-3)
	}
	obj.value=segno+valore+nuovovalore
	if(arr.length>1)obj.value=obj.value+','+arr[1]
}
</script>
<form onsubmit="this.NomeText.value=this.NomeText.value.replace(/'/g,'').replace(/,/g,'.');">
<input type="text" name="NomeText" value="" onkeyup="ControlloNumero(this)">
<input type="submit" value="submit">
</form>
come separatore di migliaia ho usato l'apice (il punto si confondeva con la virgola)
la virgola può essere inserita sia come virgola che come punto ma verrà visualizzata sempre come virgola.
Seguendo quello che giustamente dice Mich_ al submit elimino i separatori di migliaia e sostituisco la virgola col punto