不用你那么麻烦:
<input
 onkeypress="var k=event.keyCode; return k>=48&&k<=57||k==46||k==45"
 onpaste="return !clipboardData.getData('text').match(/\D/)"
 ondragenter="return false" style="ime-mode:Disabled"
>