Как мне использовать глобальный элемент сеанса в html-скрипте?

#javascript #html

#javascript #HTML

Вопрос:

Я хочу, чтобы скрипт считывал глобальный элемент, определял, равно ли его значение 1, и если да, отображал загрузку текста, но по какой-то причине это, похоже, не работает.

 var z = sessionStorage["system"]
if (z == 1) {
  document.getElementById("titlesystem").innerHTML = "Your System";
  document.getElementById("bodysystem").innerHTML = "Amazing!
}
 
 <h2 id="titlesystem"></h2>
<p id="bodysystem"></p>
 

Комментарии:

1. В вашем коде нет PHP, почему вы использовали этот тег?

2. Вам не нужна упаковка {} , и ваше изображение совпадает с кодом

3. Вы имеете в виду sessionStorage.getItem("system")

4. innerHTML = "Amazing! — Вы никогда не закрываете строку (отсутствует " в конце). Копировать / вставить опечатку?

5. Вы также должны указать, какую отладку вы выполнили. У вас есть какие-либо ошибки в консоли? Вы проверили, что sessionStorage["system"] содержит то, что вы думаете? Как, где и когда вы сохраняете значение? Пожалуйста, дайте нам больше информации.

Ответ №1:

Если я правильно понимаю, вы хотите прочитать некоторое значение, хранящееся в сеансе (в php, хранящемся в $_SESSION ), как клиент из javascript.

Во-первых: сеанс — это серверная часть, клиенты не знают, что они находятся в сеансе.

Но есть способ, как отправить значение. Это то, что пришло мне в голову:

 <h2 id="titlesystem"></h2>
<p id="bodysystem"></p>
<input type="hidden" value=<?php echo $_SESSION["value"]?> id="mySessionValue">
<script>
    var sessionValue = document.getElementById("mySessionValue").value;
    if (sessionValue == 1)
    {
        document.getElementById("titlesystem").innerHTML = "Your System";
        document.getElementById("bodysystem").innerHTML = "Amazing!"
    }
</script>
 

Комментарии:

1. В JS есть window.sessionStorage , который, скорее всего, является тем, что он ищет