I; м пытаясь лет реализовать функцию Javacript, которая не позволит пользователю вводить что-либо другое, чем числа с плавающей точкой (цифры)позволяют только цифры для входов
Это мой подход, но я не знаю, как улучшите его, чтобы также разрешить подачу отрицательных чисел (разрешить «ключ») и работать с IE.
function digits_only(evt, form) {
var evt = evt || window.event,
targ = evt.target || evt.srcElement,
charCode = evt.which || evt.keyCode,
keyChar = String.fromCharCode(charCode),
isValid = true;
if (charCode > 13) {
isValid = /[0-9.]/.test(keyChar);
//if a dolt is already in input
if (keyChar === '.' && /\./.test(targ.value)) {
isValid = false;
}
}
return isValid;
}
HI, Является ли это хороший подход? Что произойдет, если пользователь скопирует или перетащит какой-либо текст в поле ввода. Я думаю, вам лучше сделать валидацию для отправки события. – rahul
Да, валидация также должна быть добавлена, но то, что он просил сейчас, ограничивал ввод – Dels
Но вы не можете быть уверены, каким образом пользователь вводит ввод. Он может печатать, вставлять или даже перетаскивать текст. – rahul