@AbaiS

Как создать переменную, значение которой не меняется после перезагрузки страницы?

Создаю небольшой сайт с каталогом товара и возможностью оформления заказа(без онлайн оплаты и бд).
Нужно, чтобы в форме с введением имени и номера было поле с номером заказа, значение которого будет увеличиваться после заказа.
Я создал переменную, которая постоянна увеличивается на 1 после отправки формы, но как только обновляю страницу, то значение опять становится 1. Никак не могу придумать как можно от этого избавиться.
const form = document.querySelector(formSelector),
          formId = document.querySelector(formIdSelector),
          formName = document.querySelector(formNameSelector),
          formPhone = document.querySelector(formPhoneSelector),
          formSum = document.querySelector(formSumSelector),
          thanksForm = document.querySelector(thanksFormSelector),
          gross = document.querySelector(grossSelector);
    let id = 1;
    
    const addId = () => {
        formId.value = +formId.value + 1;
    };

    addId();

    form.addEventListener('submit', e => {
        e.preventDefault();
        
        let formData = new FormData(form);
        let request = new XMLHttpRequest();

        request.open('POST', 'mailer/smart.php', true);
        request.send(formData);

        formName.value = '';
        formPhone.value = '';
        formSum.value = '';

        id = id + 1;
        addId();

        gross.style.display = 'none';
        thanksForm.style.display = 'block';
    });
  • Вопрос задан
  • 107 просмотров
Решения вопроса 2
@MEDIOFF
Python Developer
Хранить данные в localStorage
Ответ написан
Комментировать
@lolzqq
HTML,CSS,JS,PHP
Вам надо эту переменную записать в cookie или в localstorage, а при визите на страницу проверять наличие куки или хранилища и считывать данные
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
sergiks
@sergiks Куратор тега JavaScript
♬♬
Учёт заказов стоит вести на сервере.
Счетчик можно держать в текстовом файле, раз нет БД.

При получении заказа, сохранять его и увеличивать единственный счётчик на сервере на 1.

Вернуть номер сохранённого заказа, чтобы показать заказавшему.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
23 нояб. 2024, в 01:31
1000 руб./за проект
23 нояб. 2024, в 00:16
2000 руб./за проект
22 нояб. 2024, в 23:55
3000 руб./за проект