JSFiddle - React, Tailwind, and code Playground
by Juan Muñoz
HTML
<input type="text" value="123 " id='numero' onkeydown=validaTeclaNumerouGuion(event) onkeyupn=validaTeclaNumerouGuionUP(event)>
JavaScript
var ctrlDown = false;
var shiftDown = false;
function validaTeclaNumerouGuion(e) {
var ctrlKey = 17,shiftKey = 16,
cmdKey = 91,
vKey = 86,
cKey = 67,
lKey = 37,
rKey = 39;
if (e.keyCode == ctrlKey || e.keyCode == cmdKey){ ctrlDown = true }
if (e.keyCode == shiftKey){ ctrlDown = true }
if (ctrlDown && (e.keyCode == cKey)) return true;
if (ctrlDown && shiftDown && (e.keyCode == lKey)) return true;
if (ctrlDown && shiftDown && (e.keyCode == rKey)) return true;
if (ctrlDown && (e.keyCode == vKey)) return true;
if (e.keyCode > 44 && e.keyCode < 57) return true;
if (e.keyCode === 8 || e.keyCode === 9 || e.keyCode === 37 || e.keyCode === 38 || e.keyCode === 39 || e.keyCode === 40) {
} else {
if (e.keyCode < 95) {
if (e.keyCode < 44 || e.keyCode > 57) {
e.preventDefault();
}
}else {
if (e.keyCode < 96 || e.keyCode > 105) {
e.preventDefault();
}
}
}
}
function validaTeclaNumerouGuionUP(e) {
var ctrlKey = 17,shiftKey = 16,
cmdKey = 91,
vKey = 86,
cKey = 67;
if (e.keyCode == ctrlKey || e.keyCode == cmdKey)
ctrlDown =false;
if (e.keyCode == shiftKey )
shiftDown =false;
}
$(document).ready(function (){
console.log(( $('#numero').val()).trim() )
})