Ответ 1
Без сомнения, ваш код верен, но вы пропустили ключевое слово "return" в текстовом поле.
<input type="text" onkeypress='return validateQty(event);'>
Вы можете увидеть код здесь
Я использую следующий код javascript, который, как я думаю, должен разрешать только номера, обратное, удаление, стрелку влево и стрелки в текстовом поле, но также позволяет создавать алфавиты. Я не знаю почему?
function validateQty(event) {
var key = window.event ? event.keyCode : event.which;
if (event.keyCode == 8 || event.keyCode == 46
|| event.keyCode == 37 || event.keyCode == 39) {
return true;
}
else if ( key < 48 || key > 57 ) {
return false;
}
else return true;
};
Вызов этой функции как
<input type="text" onkeypress='validateQty(event)'>
Без сомнения, ваш код верен, но вы пропустили ключевое слово "return" в текстовом поле.
<input type="text" onkeypress='return validateQty(event);'>
Вы можете увидеть код здесь
function isNumberKey(evt)
{
var charCode = (evt.which) ? evt.which : event.keyCode
if (charCode > 31 && (charCode < 48 || charCode > 57))
return false;
return true;
}
<HTML>
<HEAD>
</HEAD>
<BODY>
<input id="txtChar" onkeypress="return isNumberKey(event)" type="text" name="txtChar" maxlength="10">
</BODY>
</HTML>
<input type="text" class="form-control" id="dompetku_msisdn" name="dompetku_msisdn" placeholder="Phone Number" aria-describedby="helpBlock" onkeydown='return (event.which >= 48 && event.which <= 57) || event.which == 8 || event.which == 46 || event.which == 37 || event.which == 39' required /> </input>
const validateQty = (event) => {
var key = window.event ? event.keyCode : event.which;
console.log(event);
if (event.keyCode === 8 || event.keyCode === 46
|| event.keyCode === 37 || event.keyCode === 39) {
return true;
} else if (key < 48 || key > 57) {
return false;
} else { return true; }
};
<input type="text" onkeydown='return validateQty(event);'>