Escribi hace tiempo una funcion que solo acepta numeros. En esta ocasion, la modifique poquito para rechazar el digito zero (code === 48), haber si te sirve:
Código PHP:
<input id="numeros">
<script>
function numerosUnicamente(e) {
var e = e || window.event,
code = e.which || e.keyCode;
if (code > 48 && code <= 57 || code === 8 || code === 9 || code === 13 || code === 27) {
return true;
}
else {
return false
}
}
document.getElementById('numeros').onkeypress = numerosUnicamente;
</script>
NOTA: La puedo modificar ampliamente, solo comenta que otras reglas o caracteristicas deseas.
Edit:
8 - Backspace
9 - Tab
13 - Keypad Enter
27 - Escape
48 - 0
49 - 1
50 - 2
51 - 3
52 - 4
53 - 5
54 - 6
55 - 7
56 - 8
57 - 9