Я написал следующий код для проверки текстового поля с числами с двумя цифрами после десятичного кода, но он не работает в firefox , он блокирует все ключи после того, как мы набрали две цифры после десятичной. Экзамены: если я типа 123.45, я не могу выполнить какое-либо другое событие, в котором текстовое поле действует так, как будто оно отключено.Код проверки числового текстового поля Firefox не работает
JavaScript:
функция noAlphabets (событие) {
var charCode = (event.which) ? event.which : event.keyCode
if (charCode == 188) {
return true;
}
//Compatible with IE8 & other browser
var obj = event.currentTarget ? event.currentTarget : event.srcElement;
var newvalue = $(obj).val();
alert(newvalue);// $(event.currentTarget).val();
//if (newvalue.indexOf(".") >= 0) {
// if (newvalue.substr(newvalue.indexOf(".") + 1, (newvalue.length - 1)).length >= 2)
// { return false; }
//}
if ((charCode != 46 && charCode > 31
&& (charCode < 48 || charCode > 57))
|| (charCode == 46 && $(obj).val().indexOf(".") != -1))
return false;
return true;
}
MVC код вид:
@ Html.TextBoxFor (модель => model.FolioList [I] (Объект) new {disabled = "disabled", @onkeypress = "return noAlphabets() мероприятие);" })
Сценарий принимать более двух значений после Decima, а также несколько знаков после запятой. а также не работает в firefox. –
Итак, если я правильно понимаю это, вы ищете его, чтобы просто установить переменную (т.е. что-то вернет true), если между каждым периодом или между периодом и концом ввода не должно быть двух символов , Это верно? – IronFlare
@NIMESHJAIN Это очень поздний ответ, но я просто перечитаю ваш комментарий, и я думаю, что теперь понимаю, что вы имели в виду. Я создал исходный прототип старого браузера, который не понимал тип ввода «Число». В результате скрипт работал правильно там, а не когда он запускался в обновленном браузере. Я изменил тип ввода на «Текст» и устранил проблему ([JSFiddle] (http://jsfiddle.net/7xpLhhxa/3/)). Не стесняйтесь, дайте мне знать, если это работает, или если это не то, что вы ищете. – IronFlare