Поменяйте событие поля в cart.js с "change" на "input"

1

Проблема в том, что "change" сработает только когда, изменив значение в поле на желаемое, нажмёшь вне поля.

В подавляющем большинстве случаев нужно, чтобы изменение срабатывало сразу.

Поэтому это строчку

$(".cart input.qty").change(function () {

замените на данную

$(".cart input.qty").on('input', function () {

5 комментариев

  • +1
    Алексей Алексей Webasyst 19 октября 2017 19:56 #

    Вы можете это изменить в шаблоне используемой темы

    • +1
      devellopah devellopah 19 октября 2017 20:23 #

      Да, но это должно быть по определению. Чем оправдано использование "change" вместо "input"?

      Плюс будет правильнее сразу выделять поле, добавив в файл

      $(".cart input.qty").click(function() {

      $(this).select();

      });

      • +2
        Genasyst Genasyst 19 октября 2017 20:52 #

        Кто так определил? ГОСТ?

        • +1
          devellopah devellopah 20 октября 2017 17:26 #

          Допустим, пользователь хочет поменять значение поля. Чтобы произвести post - запрос ему не достаточно просто изменить значение поля, а необходимо затем нажать вне поля(deselect). Это же странно(для пользователя) изменить значение поле и не увидеть изменений сразу же.

          • +2
            Genasyst Genasyst 21 октября 2017 03:06 #

            А так будут лишние запросы... Каждый делает как ему удобнее, стандартов не существует! Если в вашем проекте надо так, то у себя в теме смените.

            Добавить комментарий

            Чтобы добавить комментарий, зарегистрируйтесь или войдите