Александр Л.
333 сообщения
#10 лет назад
Привет. Написал небольшой jQuery плагин для подсчета цены в таблице товаров. Прошу протестите и выскажите чем он УГ. Спасибо.

Утром буду, жду комментариев! Спасибо!

Ссылка на пример:
Андрей Андреев
798 сообщений
#10 лет назад
Masterix, у вас нету не какого хостинга чтобы свой плагин выложить?
Александр Л.
333 сообщения
#10 лет назад
b0nn1e, почему, есть. А что? вы скачать не можете?
Надежда С.
349 сообщений
#10 лет назад
Сделайте ограничение по минимальному кол-ву товара 0. Иначе останетесь должны покупателю
Александр Л.
333 сообщения
#10 лет назад
WebAir, Это понятно. Но это нужно устанавливать уже в самом spinner в UI.
А если spinner не используется, то и ставить такое число врядли кто-то будет. Вот вы, хоть раз при покупке через интернет магазин пытались поставить -1 товар? Думаю нет =) Но все же спасибо.

Что-то совсем ответов нет... Жаль. Кстати, дописал сегодня плагин и доки сделал, кому инетресно и хочет потестить могу скинуть. Пишите в ЛС.
Максим Ф.
3195 сообщений
#10 лет назад
Цитата ("Masterix"):
Что-то совсем ответов нет...

Цитата ("b0nn1e"):
Masterix, у вас нету не какого хостинга чтобы свой плагин выложить?
Александр Л.
333 сообщения
#10 лет назад
Не пойму.
Вот так:

Или что? Внутри в архиве есть примеры и доки по опциям
Максим Ф.
3195 сообщений
#10 лет назад
Выложите на хостинг, чтобы можно было открыть страничку и посмотреть. Или выложите в раздел plugins сайта jquery.com
Сделайте нормальную демо версию, чтобы можно было в один клик открыть и посмотреть.
Например, я бы с удовольствием посмотрел, но скачивать не хочу.
Вы же просите помощи, так почему бы вам не сделать так, чтобы тем, кто всё-таки хочет посмотреть, было бы максимально удобно и комфортно это сделать?
Александр Л.
333 сообщения
#10 лет назад
Цитата ("AlekartRu"):
так почему бы вам не сделать так, чтобы тем, кто всё-таки хочет посмотреть, было бы максимально удобно и комфортно это сделать?


Вот теперь понятно. Выложу - отпишусь.
Александр Л.
333 сообщения
#10 лет назад
Ну вот, выкладываю!
Тестите на здоровье!

Андрей Андреев
798 сообщений
#10 лет назад
Цитата ("Masterix"):
Ну вот, выкладываю!
Тестите на здоровье!

]http://jsjq.ru/plugins/jquery.tableprice/

Ну так лучше, удобнее "тестить"
1. Не обрабатываются значение отрицательные и если ввести текст то будет NaN. Я эту пробелему решал примено так:

if (/^*$/.test(count)){
do something...
}else {
count = 0;
}

2. Эти вещи все должны пересчитываться на сервере. На сервер отправляем количество определённого товара, а с сервера уже получаем корзину, цену товара, и общую сумму. Потому-что если это будет завязано на JS то я у вас такого понакупаю, что потом со мной не рассчитаетесь.
3. Я не увидел исчерпывающего функционала что-бы это называть "плагином", как по мне это совершенно бесполезный скрипт.
Александр Л.
333 сообщения
#10 лет назад
b0nn1e, Спасибо за пункт 1. На счет 2го пункта не совсем уверен. Я делал плагин из расчета моего опыта работы и верстки интернет магазинов. Собрал все примеры и соединил их в один. На фирме верстаем такие корзины уже не 1 раз и все нормально. Достаточно просто написать так, чтобы небыло отрицательных чисел. Ну и это все в основном будет формой, и отправляться на сервер будет уже по сабмиту.

На счет 3го пункта вообще не согласен. Во-первых это 1я версия. Еще будет много дописываться и придумываться. Какой функционал Вам нужен, чтобы это был полноценный плагин? Колбэки, методы? Возможно. Я вижу 2-3 ну 4 таких возможности написать дополнительные функции. А вы?

Спасибо!
Максим Ф.
3195 сообщений
#10 лет назад
Возможно стоит добавить пересчёт не по событию потери фокуса, а по изменению поля, Например, сейчас пересчёт идет, когда я ввел значение и переместил курсор в другое место, а было бы удобнее, если бы ввел цифру и стазу (моментально) всё пересчиталось. Плюс согласен с п. 1 выше, по 2-ому пункту - проверка нужна на сервере как итог, т.е. пересчёт на JS в моменте вполне допустим, но дополнительные итоговые проверки на сервере также нужны.
Александр Л.
333 сообщения
#10 лет назад
AlekartRu, спасибо. Да, моментальный пересчет по вводу в поле тоже нужен. Согласен. Это еще стоит дописать. Но большинство корзин используют UI Spinner, в котором можно выставить эту опцию. Вернее событие. И уже по этому событию вызывать нашу функцию. Она все пересчитает. Но можно, конечно, и добавить в сам плагин эти функции. Тобишь расширить функционал еще. Думаю среди недели появится версия 1.0.1.

Еще раз спасибо, AlekartRu.
Александр Л.
333 сообщения
#10 лет назад
Немного подкорректировал плагин.
- Минус 2 опции.
- Ввод в инпуты теперь только цифр

Максим Ф.
3195 сообщений
#10 лет назад
Если ввести слишком большую цифру в количество товара, то сумма будет выглядеть некрасиво (с экспонентой), а стоимость заказа не будет пересчитываться - нужно поставить ограничение на макс. количество одного товара. Ссылка "удалить продукт" в ie8 и firefox (другое не смотрел) не работает, это нормально?
Александр Л.
333 сообщения
#10 лет назад
Цитата ("AlekartRu"):
Если ввести слишком большую цифру в количество товара, то сумма будет выглядеть некрасиво (с экспонентой), а стоимость заказа не будет пересчитываться - нужно поставить ограничение на макс. количество одного товара. Ссылка "удалить продукт" в ie8 и firefox (другое не смотрел) не работает, это нормально?


Исправил оба момента.
Максим Ф.
3195 сообщений
#10 лет назад
Я бы убрал возможность ввода нуля в количество товара, при вводе нуля, я бы выводил справа от инпута сообщение, например, "min. 1 товар" и заменял бы ноль единицей.
При превышении числа больше, чем максимально разрешённое количество товара, я бы выводил справа от инпута сообщение, например, "max. 100 шт." и заменял бы введённое число на максимальное.
При удалении последнего товара из корзины сначала удаляется этот товар, потом удаляется шапка таблицы, потом выводится сообщение, что корзина пуста. При удалении последнего товара, я бы проверял, что он последний (количество строк tr таблицы = 2) и удалял бы последний товар вместе с шапкой таблицы, одновременно, а не поочереди, т.к. есть некоторое "мигание" при удалении html тэгов из dom, это не очень здорово на мой взгляд.
Александр Л.
333 сообщения
#10 лет назад
AlekartRu, Спасибо. Вот на счет тултипов про min и max товаров это классная идея. Это точно нужно будет включить в скрипт. (и, наверное, нужно будет сделать, чтобы пользователь мог сам ставить ограничение на максимальное кол-во товаров, но не больше, к примеру, чем 10000).

Форумчане, подключайтесь к идеям. Может у кого-то есть еще интересные идеи? Буду реализовывать.

На выходных допишу:
1) методы: destroy, change
2) колбеки: create, beforeChange, afterChange

Может у кого-то есть еще идеи на счет методов и событий?

Всем заранее спасибо!
Андрей Андреев
798 сообщений
#10 лет назад
Masterix, Я бы еще добавил бутоны волзе каждого инпута +1 -1 и при фокусе очищал бы значения. Ибо если в корзине 1 товар, а нужно 2, то много кликов получается - кликнуть в поле, стереть 1, ввести 2.