allora basta togliere l'alert dalla funzione... piuttosto inserisci un messaggio di errore con innerHTML

codice:
<script>
function check(inp) {
  if (! (inp.value.match(/^[0-9]+$/) || inp.value.match(/^\.$/))) {
     inp.focus();
     document.getElementById(inp.id + '_warning').innerHTML = inp.id + " è errato";
  }
}
</script


<input type="text" id="campogenerico" onblur="check(this)">
<div id="campogenerico_warning"></div>