Я нашел следующий код jQuery в Интернете, но вскоре обнаружил, что он имеет недостаток в том, что он не принимает десятичную точку (код ascii 46) - хотя код кажется, позволяет это.с помощью jQuery/javascript для ограничения ввода поля цены
В настоящее время я не могу ввести цены, такие как 1.23, так как период игнорируется, и я получаю 123 вместо этого.
Может ли кто-нибудь обнаружить whty, что это не работает?
// Numeric only control handler
$.fn.ForceNumericOnly =
function()
{
return this.each(function()
{
$(this).keydown(function(e)
{
var key = e.charCode || e.keyCode || 0;
// allow backspace, tab, delete, arrows, numbers and keypad numbers ONLY
return (
key == 8 ||
key == 9 ||
key == 46 ||
(key >= 37 && key <= 40) ||
(key >= 48 && key <= 57) ||
(key >= 96 && key <= 105));
})
})
};
Я использую плагин так:
$(function(){
$('#price_field').ForceNumericOnly();
});