Text inputs can accept numbers but if you want to be sure that the user puts in a number and not text you can use a number type instead of text.
Paste these four lines just before the submit button:
<div>
<label for="idnumber">Your ID number: </label>
<input type="number" name="id" id="idnumber">
</div>
Save and try sending a number. It should work. Try putting some text in the ID number field and it should fail. If you are using an old browser it might still work.
You can also set a minimum and maximum allowed value for the number by adding those attributes. Change the above new input element by adding max and min like this:
<input type="number" name="id" id="idnumber" min="1000" max="9999">
Try various numbers above, between and below those figures and see what happens when you submit the form.