Jump to content


Photo
- - - - -

Как создать возможность ввода дробного количества

количество товара дробное значение

Best Answer tapakan , 10 October 2014 - 16:26

Здравствуйте.

Попробуйте рецепт из этой темы: http://forum.jbzoo.c...go-kolichestva/

Go to the full post


  • This topic is locked This topic is locked
10 replies to this topic

#1 Руфина

Руфина
  • JBZoo User (rus)
  • User rate: 0
  • posts: 24
  • topics: 8

Posted 30 September 2014 - 03:56

Добрый день.

 

Необходимо вводить дробное количество товара. Продаваемый товар - заказные торты, единица измерения - килограммы. Кол-во по умолчанию будет стоять - 1 кг. Нужно, чтоб можно было добавлять шагом по 0.1 кг (т.е. по 100 грамм).

 

Указывать количество в граммах нельзя, т.к. у заказчика требование, чтобы цена была указана именно за килограмм.

 

Прошу помочь с решением.


  • 0

#2 Cheren-dow

Cheren-dow
  • JBZoo User (rus)
  • User rate: 95.7
  • posts: 5060
  • topics: 31

Posted 30 September 2014 - 11:27

Руфина, не совсем понимаю суть вопроса. Вы хотите в при заполнение вносить например 0,8 а на сайте что бы выводилось 800?


  • 0
Изображение
 

#3 Руфина

Руфина
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 0
  • posts: 24
  • topics: 8

Posted 30 September 2014 - 12:27

Руфина, не совсем понимаю суть вопроса. Вы хотите в при заполнение вносить например 0,8 а на сайте что бы выводилось 800?

я хочу и вносить 0.8 и чтоб отображалось 0.8. Но когда я в настройках устанавливаю размер шага для добавления количества - если устанавливаю значение без десятичных знаков - все работает, если устанавливаю шаг 0.1, то кнопки плюс и минус (добавить или убавить количество с фронтэнда) просто не работают. Из этого я сделала вывод, что дробное значение внести нельзя.


  • 0

#4 Руфина

Руфина
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 0
  • posts: 24
  • topics: 8

Posted 01 October 2014 - 07:10

Руфина, не совсем понимаю суть вопроса. Вы хотите в при заполнение вносить например 0,8 а на сайте что бы выводилось 800?

Добрый день. Так все-таки, Вы можете мне подсказать, как установить дробные значения для ввода количества и для поля "множитель для количества"?


  • 0

#5 gBACTAKAHA

gBACTAKAHA
  • JBZoo User (rus)
  • User rate: ~
  • posts: 5
  • topics: 3

Posted 01 October 2014 - 09:39

Присоединяюсь к вопросу. Как сделать дробное количество?


  • 0

#6 SmetDenis

SmetDenis
  • Administrators
  • User rate: 139.4
  • posts: 16232
  • topics: 200

Posted 01 October 2014 - 10:30

Сейчас дробные значения в виджете с кнопками (+/-) не предусмотрены.
Он появится в следующей версии - 2.2

Наиболее простой вариант для вас - это указывать значение в граммах 800 +/- 100 (например).

Можно сделать хак, но боюcь, он затронет множество файлов и не могу гарантировать стабильную работу.
  • 0
JBZoo v4.0 и новый чудный мир Open Source GPL
Отключайте проверку лицензий как можно скорее!



— Есть два типа людей: Кто еще не делает бекапы и кто уже делает бекапы.


#7 Руфина

Руфина
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 0
  • posts: 24
  • topics: 8

Posted 02 October 2014 - 01:51

Сейчас дробные значения в виджете с кнопками (+/-) не предусмотрены.
Он появится в следующей версии - 2.2

Наиболее простой вариант для вас - это указывать значение в граммах 800 +/- 100 (например).

Можно сделать хак, но боюcь, он затронет множество файлов и не могу гарантировать стабильную работу.

Напишите, пожалуйста, как сделать хак, мне очень нужно реализовать эту функцию, буду пробовать. Т.к. сайт сделан и принят заказчиком, за исключением этой "маленькой" доработки. Из-за этого переделывать сайт на другом компоненте я не могу.


Напишите, пожалуйста, как сделать хак, мне очень нужно реализовать эту функцию, буду пробовать. Т.к. сайт сделан и принят заказчиком, за исключением этой "маленькой" доработки. Из-за этого переделывать сайт на другом компоненте я не могу.

Вы написали:

Сейчас дробные значения в виджете с кнопками (+/-) не предусмотрены.

 

А можно без кнопок вводить дробное значение? Просто оставить окно для ввода. Если да, тоже напишите, пожалуйста, где это. Заранее благодарю.


  • 0

#8 Руфина

Руфина
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 0
  • posts: 24
  • topics: 8

Posted 02 October 2014 - 08:22

Сейчас дробные значения в виджете с кнопками (+/-) не предусмотрены.
Он появится в следующей версии - 2.2

Наиболее простой вариант для вас - это указывать значение в граммах 800 +/- 100 (например).

Можно сделать хак, но боюcь, он затронет множество файлов и не могу гарантировать стабильную работу.

Я придумала еще один вариант решения своей задачи, но тоже требуется ваша помощь. Допустим, цена товара будет указана за 1 кг - например, 850 р. Количество по умолчанию будет указано - 1000 (подразумевается граммов), множитель для количества будет установлен - 100 (подразумевается граммов). Допустим, введем значение количества 1500, но т.к. цена указана 850р. получим сумму 1275000 р. Я предлагаю переписать математическую операцию, добавив деление суммы на 1000 (в моем конкретном случае).

Этот вариант будет проще других хаков для решения моей задачи?

Подскажите, в каких файлах можно переписать эту математическую операцию. Если укажите необходимые поправки к коду, будет очень здорово!


  • 0

#9 Cheren-dow

Cheren-dow
  • JBZoo User (rus)
  • User rate: 95.7
  • posts: 5060
  • topics: 31

Posted 02 October 2014 - 10:28

Руфина, если я все правильно понял, вам нужно править исходник JS кода

сайт\media\zoo\applications\jbuniversal\assets\js\jquery.jbzootools.orig.js 

В файле вам нужно найти этот кусок кода

            $('.jsAddQuantity', $obj).click(function () {
                var quantity = parseInt($('.jsCount', $obj).val(), 10);
                quantity += parseInt(options.params.multipleValue, 10);
                $('.jsCount', $obj).val(quantity);
                return false;
            });

            $('.jsRemoveQuantity', $obj).click(function () {
                var quantity = parseInt($('.jsCount', $obj).val(), 10);
                quantity -= parseInt(options.params.multipleValue, 10);
                if (quantity <= 0) {
                    quantity = options.params.startValue;
                }

                $('.jsCount', $obj).val(quantity);
                return false;
            });

            $('.jsCount', $obj).bind('change', function () {
                var value = parseInt($.trim($(this).val()));
                value = (isNaN(value) || value < 1) ? options.params.startValue : value;
                $(this).val(value);
            });

После правок сжать его и положить содержимое в jquery.libraries.min.js


  • 0
Изображение
 

#10 Павел Акимов

Павел Акимов
  • JBZoo User (rus)
  • User rate: 20.2
  • posts: 452
  • topics: 63

Posted 08 October 2014 - 19:48

Сейчас дробные значения в виджете с кнопками (+/-) не предусмотрены. Он появится в следующей версии - 2.2

 

К сожалению ждать 2.2 уже не могу. :( да и сроков у вас нет. Дайте хотя бы зацепку куда копать.


  • 0





Also tagged with one or more of these keywords: количество товара, дробное значение

Click to return to top of page in style!