In un campo di testo di un form dove verranno inseriti km percorsi da un veicolo, vorrei consentire la digitazione solo di numeri maggiori di zero.

Con questa funzione riesco a far sì che vengano inseriti solo numeri non negativi, ma viene permesso lo zero.
codice:
function PermettiSoloNumeri(e) {
        var code = (e.which) ? e.which : e.keyCode;
        if (code > 31 && (code < 48 || code > 57)) {
            e.preventDefault();
        }
    }
Per evitare che sia possibile incollare nel campo qualunque cosa, ho impedito copy/cut/paste.
codice:
<input type="text" name="km" class="form-control" id="km" oncopy="return false;" onpaste="return false;" oncut="return false;" onkeypress="PermettiSoloNumeri(event)" placeholder="Digita i chilometri" required>
L'ideale sarebbe modificare la funzione in modo da impedire l'inserimento dello zero e, se possibile, impedire il "paste", senza pasticciare il codice HTML.

Qualche idea?
Grazie!