@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 + " руб.")
		}
	})
  • Вопрос задан
  • 145 просмотров
Решения вопроса 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(), не помню какой точно за это отвечает.
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы