Сообщество
Логин
Пароль
Забыли пароль?     Регистрация
Ещё проектики
Рабочее время
Минималистичный счётчик рабочего времени онлайн
Общение / Веб версия / Операция деления в поле ввода для суммы

Операция деления в поле ввода для суммы

Ilyan
26 октября 2014 21:17
Admin Пишет:
Потому что всех много, и все они не нужны.
Они нужны не для изотерических случаев, а для того, чтобы подсказка "математическое выражение" соответствовала действительности.

Вы же пишете бухгалтерию, которая как известно, любит точность. Разве вам надо, чтобы любой пользователь, случайно введший "++", и потративший лишнюю секунду на обдумывание "ошибки", вздохнул и подумал: "Ну да, вот еще один недочет, ну а что я ожидал-то". А потом засомневался: "Интересно, а другие арифметические операции точно выполняются правильно?"
Ilyan
26 октября 2014 21:45
Ilyan Пишет:
Вам бы ещё PHP освоить, цены не будет
http://learn.javascript.ru/play/y7uYD

Я неплохо продвинулся в изучении PHP :)

Вроде все работает - и в любых местах стринга, и с активным selection...
Ilyan
26 октября 2014 22:07
Даже так:

http://learn.javascript.ru/play/edskrc

В таком виде проще добавлять различные замены - надо только определить длину заменяемого куска до курсора (replaceBeforeLength) и на что менять (insert).
Admin
 
27 октября 2014 10:50
Во всех основных браузерах проверяли?
Admin
 
27 октября 2014 10:53
Ilyan Пишет:
Я неплохо продвинулся в изучении PHP :)
Так может быть тогда задачу импорта отрефакторим?
Там в задачнике у нас целый списочек сторонних программ, из которых нужен импорт. И для этого нужен общий класс встроенный в наш движок + для каждого источника свой метод.
Ilyan
27 октября 2014 11:46
Admin Пишет:
Во всех основных браузерах проверяли?
Давайте оставим немного работы тому, кто получает за нее деньги :)

В Chrome, Firefox и IE11 - ок.

Правда, с переключением между '.' и '/' не очень хорошо - первый '/' ВСЕГДА заменяется, даже если он был нажат в русской раскладке кака Shift+''.

Надо проверять и chr == '/', и ваш любимый keycode.

Последняя версия:

http://learn.javascript.ru/play/OVKuVb
Ilyan
27 октября 2014 18:45
Ilyan Пишет:
Надо проверять и chr == '/', и ваш любимый keycode.
Точнее, надо проверять keycode в onkeydown, а потом как-то учитывать это в onkeypress...
Admin
 
27 октября 2014 21:09
Прикручен слегка подпиленный фильтр от Ильи, спасибо ему.
Понаблюдаем, как себя оправдает.
Ilyan
27 октября 2014 21:56
Admin Пишет:
Прикручен слегка подпиленный фильтр
Пожалуйста )

Кстати, в этот фильтр довольно легко добавить много новых "фишечек".

Например, заменять "--" на "+" по мере ввода, проглатывать залипания "." и ",", и т. п.

А что касается использования eval, до сих пор есть баг с восьмеричными числами: ведущий ноль убирается только у первого числа.
x35bug
29 ноября 2014 21:32
Admin Пишет:
Прикручен слегка подпиленный фильтр от Ильи, спасибо ему.
Понаблюдаем, как себя оправдает.
У меня это теперь иногда вызывает кратковременный ступор, когда я пытаюсь ввести сумму, но ничего не происходит. Потом понимаю, что просто у меня включена не та раскладка, которую я ожидал, потому ничего и не вводится. Но до этого нововведения осознание неправильной раскладки происходило существенно быстрее :)

Все же это как-то неправильно - обрабатывать "ошибку" пользователя, но никак не сигнализировать пользователю об этом. Если уж вы так держитесь за эту фичу - может хотя бы будете как-то пользователю сообщать об этом? Выделять поле красным цветом при попытке ввода соответствующих символов, например.
Admin
 
30 ноября 2014 12:39
x35bug Пишет:
может хотя бы будете как-то пользователю сообщать об этом?
Мысль хорошая, надо подумать.
  Сюда 1 2
Чтобы отвечать на сообщения - зарегистрируйтесь и войдите в личный кабинет.