Информация о файлах cookie на этой странице

Наш сайт использует файлы cookie, чтобы обеспечивать его работу, а также собирать и анализировать данные о работе и использовании сайта. Политика конфиденциальности

  • Курсы
    • Discord
    • Twitter
    • Linkedin
    • Facebook
    • Instagram
  • Тарифы
  • English
  • Čeština
  • Deutsch
  • Русский
ВойтиНачать бесплатно
  • Курсы
  • Тарифы

Сообщество

Войти
  
  • Курсы
    • Discord
    • Twitter
    • Linkedin
    • Facebook
    • Instagram
  • Тарифы
  • English
  • Čeština
  • Deutsch
  • Русский
ВойтиНачать бесплатно
  • Курсы
  • Тарифы

Сообщество

Войти

Выбор мест

Теперь посетитель выбирает места: нажатие на свободное место выбирает его, а повторное нажатие отменяет выбор. Под местами страница сообщает, сколько мест выбрано и сколько они стоят вместе.

Храните выбранные места в массиве selectedSeats, как избранное в мини-проекте «Киновечер»: includes() подскажет, выбрано ли место, push() добавит его, а filter() создаст массив без него. После каждого изменения рисуйте места заново с помощью showSeats(), которая даёт выбранным местам класс selected. Обработчик нажатия каждого места вешается на его кнопку в showSeats(), создаётся внутри циклов и потому знает своё место. Проданные места отключены, поэтому нажатие на них ничего не делает.

Цена. Цена одного билета лежит в свойстве price сеанса, поэтому сумма — это selectedSeats.length * chosenShowtime.price. Показывайте её в абзаце с id summary под местами каждый раз, когда showSeats() их рисует, например Мест: 2, итого: 900 ₽. Знак рубля стоит после числа, поэтому в шаблонной строке его просто пишут после ${…}: `${total} ₽` даёт 900 ₽.

Другой сеанс. Места, выбранные на пятницу, ничего не значат в субботу. Когда посетитель выбирает сеанс, выбор начинается заново, с пустого.

Типичные ошибки:

  • Создать selectedSeats через const. filter() создаёт новый массив, а попытка записать его в константу заканчивается ошибкой TypeError: Assignment to constant variable.

Задание

  1. 1

    Нажатие на свободное место выбирает его, а повторное нажатие отменяет выбор. У выбранных мест есть класс selected. В style.css придайте им собственный вид, например янтарный фон.

  2. 2

    Под местами добавьте абзац с id summary. Каждый раз, когда места рисуются, показывайте в нём, сколько их выбрано и сколько они стоят вместе: Мест: 2, итого: 900 ₽.

  3. 3

    Когда выбран сеанс, начинайте без выбранных мест.

Назад

5/8

  1. 1. Расписание из файла
  2. 2. Выбор дня
  3. 3. Выбор сеанса
  4. 4. Места в зале
  5. 5. Выбор мест
  6. 6. Форма бронирования
  7. 7. Сохранение бронирований
  8. 8. Ваши билеты
Далее

Начните программировать бесплатно

Регистрируясь, вы принимаете Условия использования и Политику конфиденциальности.

Или зарегистрируйтесь через: