Задать вопрос
@danchiksux
Говнокодер

Как сделать что бы промокод можно было активировать один раз за то время пока открыт сайт?

Есть скрипт который при вводе промокода отнимает -500 рублей от цены но если его стирать и вводить заново он будет каждый раз отнимать 500р. Как исправить это?
$('.form-control[name=promo]').on('keyup', function() {
		var nac_price = $('.complete:not(#complete2)').text().split(' ');
		var old_price =  parseInt(nac_price[1]);
		var text = $('.form-control[name=promo]').val();
		var codes = ["PROMO", "PROMO2"];
		if ($.inArray(text, codes) != "-1") {
			var priceP = parseInt(nac_price[1]);
			var promo_new_price =  priceP - 500;
			$('.complete:not(#complete2)').text("Цена: " + promo_new_price + " руб.")
		}
	})
  • Вопрос задан
  • 162 просмотра
Подписаться 2 Простой Комментировать
Решения вопроса 1
leni_m
@leni_m
ЧупаКобрус
var x = true;
$('.form-control[name=promo]').on('keyup', function() {
if (x) {
     отнимаем 500 рубасов;
     x = false;
    }
  })
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
humiliation
@humiliation
Чем больше знаю - тем больше дурак
если по логике - метка в сессию/куку/бд.

конкретно в твоем случае - удаляй обработчик с инпута после подсчета. .unbind() или .off(), не помню какой точно за это отвечает.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
div. Ставрополь
от 40 000 до 90 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽