#javascript #html #css
#javascript #HTML #css
Вопрос:
Я попытался распечатать значения флажка на другой HTML-странице, используя локальное хранилище, но он не отображался на другой HTML-странице
Вот моя страница 1 HTML
<input class="checkbox" type="checkbox" id="option1" name="car1" value="BMW">
<label for="vehicle1">BMW</label><br>
<input class="checkbox" type="checkbox" id="option2" name="car2" value="Ferrari">
<label for="vehicle2">Ferrari</label><br>
<input checkbox="checkbox" type="checkbox" id="option3" name="car3" value="Ford">
<label for="vehicle3">Ford</label><br>
<input class="checkbox" type="checkbox" id="option4" name="car4" value="Audi">
<label for="vehicle4">Audi</label><br>
<input class="checkbox" type="checkbox" id="option5" name="car5" value="Cadillac">
<label for="vehicle5">Cadillac</label><br>
Вот мой код javascript
for (var i = 0; i < inputs.length; i ) {
if (inputs[i].type == "checkbox" amp;amp; inputs[i].checked) {
count2 ;
localStorage.setItem("checkvalue", inputs[i].value);
}
}
<script>
// page2 HTML
<span id="result"></span>,Welcome
document.getElementById("result").innerHTML = localStorage.getItem("checkvalue");
</script>
Комментарии:
1. Вы перезаписываете
checkvalue
значение на каждой итерации. Также для большей согласованности вам необходимо создать JSON, а затем сохранить JSON в localStorage.
Ответ №1:
Как упоминал @SMAKSS, вы переопределяете свой localstorage на каждой итерации.
Вместо
for (var i = 0; i < inputs.length; i ) {
if (inputs[i].type == "checkbox" amp;amp; inputs[i].checked) {
count2 ;
localStorage.setItem("checkvalue", inputs[i].value);
}
}
Вы должны
localStorage.setItem("results", JSON.stringify(inputs));
И извлеките его с помощью
JSON.parse(localStorage.getItem("results"));