HTML / HTTP не имеет состояния, это означает, что то, что вы делали / видели на предыдущей странице, полностью отключено от текущей страницы. Вопрос в том, как передать переменную между двумя страницами в переднем конце. (Поскольку HTTP не имеет состояния, каждый раз, когда вы загружаете страницу, он будет использовать начальные значения того, что вы установили в JavaScript. Вы не можете установить глобальную переменную в JS и просто оставить это значение после загрузки страницы снова.
Существует несколько способов сохранить значение в другом месте, чтобы можно было инициализировать его при загрузке с помощью JavaScript)
1) - Простое использование хранилищ внешнего интерфейса, которое оснащает любой браузер (файлы cookie, хранилище сеансов, локальное хранилище - которые по соображениям безопасности доступны в одном домене -> это означает, что вы можете сохранять данные в этом хранилище только для одного домена, другого домен не может получить доступ к этим данным) и поместить значение на одной странице и получить значение на других.
Учитывая, что:
Cookie сохраняет данные до определенного вами времени,
Session Storage сохраняет данные, пока не закроется вкладка браузера по умолчанию.
Локальное хранилище сохраняет данные до тех пор, пока Браузер полностью не закрывается и не обменивается данными между вкладками (страницами). Оно хранит данные без даты истечения срока их действия и очищается только с помощью JavaScript или очистки кэша браузера / Локально сохраненных данных - в отличие от срока действия файлов cookie.
2) - Добавить атрибуты к элементу, когда он генерируется с помощью функции рендеринга Ajax
<a href='example2.html?action=getAll&element=product&id=1'>a link</a>
<a href='example2.html?action=getAll&element=product&id=2'>another link</a>
-> и после щелчка по этому элементу построить «URL /? action = getAll & element = product & id = 1 “и на второй странице, которая пропадет action, вы можете проанализировать этот URL и вызвать соответствующий Ajax с соответствующими параметрами.