Сохранение полей формы созданных динамически с помощью js

При помощи скрипта на javascript создаю дополнительные поля для формы.

    function addField() {
    const form = document.querySelector('tbody');

    let newField = document.createElement('input');
    let newTr = document.createElement('tr');
    let newTd = document.createElement('td');
    let contenteditable = document.createElement('td');

    newField.setAttribute('type', 'text');
    newField.setAttribute('name', 'expenditure[]');

    contenteditable.setAttribute("contenteditable", true);
    contenteditable.innerHTML = "Поле для ввода данных";

    const pos = form.childElementCount;
    newTd.appendChild(newField);
    newTr.appendChild(contenteditable);
    newTr.appendChild(newTd);


    form.insertBefore(newTr, form.childNodes[pos]);
}

Как мне сохранить состояние страницы, чтобы после перезагрузки страницы новые поля формы оставались на месте?

На сервере есть php скрипт, который ловит данные из формы.


Ответы (1 шт):

Автор решения: Константин Бронштейн

На стороне сервера Вы можете:

  1. Передать данные формы на сервер и сохранить их в $_SESSION[], и далее, при запросе страницы, если у Вас не пост-запрос с формой, значит нужно взять из сессии ранее сохраненные данные и отправить на клиент.
  2. Также Вы вместо сессии можете использовать базу данных

На стороне клиента Вы можете:

  1. Использовать localStorage иди Web-SQL
→ Ссылка