Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Подскажите как сохранить куки ? (https://javascript.ru/forum/misc/80777-podskazhite-kak-sokhranit-kuki.html)

AnteFil 31.07.2020 15:07

Подскажите как сохранить куки ?
 
Есть страница с формой около 5 input
<input type="text" size="40">
<input type="text" size="40">
<input type="text" size="40">
<input type="submit" value="Отправить">
Как сделать так что бы по клику данные из input сохранились в куки, а при загрузке страницы вставлялись в input ???

рони 31.07.2020 16:20

localStorage сохранение введённых данных
 
AnteFil,
<!doctype html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <title>Document</title>

  <script>
document.addEventListener("DOMContentLoaded", function() {
    let k = JSON.parse(localStorage.item || "[]");
    const inp = document.querySelectorAll('input.item');
    const fn = (elem, i) => {
        if (k[i] !== void(0)) elem.value = k[i];
        elem.addEventListener("input", _ => {
            k[i] = elem.value;
            localStorage.item = JSON.stringify(k);
        })
    };
    inp.forEach(fn);
});
  </script>

</head>
<body>
<input type="text" size="40" class="item">
<input type="text" size="40" class="item">
<input type="text" size="40" class="item">
<input type="text" size="40" class="item">
<input type="text" size="40" class="item">
<input type="submit" value="Отправить">
</body>
</html>

AnteFil 31.07.2020 16:36

Цитата:

Сообщение от рони (Сообщение 527416)
AnteFil,
<!doctype html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <title>Document</title>

  <script>
document.addEventListener("DOMContentLoaded", function() {
    let k = JSON.parse(localStorage.item || "[]");
    const inp = document.querySelectorAll('input.item');
    const fn = (elem, i) => {
        if (k[i] !== void(0)) elem.value = k[i];
        elem.addEventListener("input", _ => {
            k[i] = elem.value;
            localStorage.item = JSON.stringify(k);
        })
    };
    inp.forEach(fn);
});
  </script>

</head>
<body>
<input type="text" size="40" class="item">
<input type="text" size="40" class="item">
<input type="text" size="40" class="item">
<input type="text" size="40" class="item">
<input type="text" size="40" class="item">
<input type="submit" value="Отправить">
</body>
</html>

Не работает и не понятно где что сохраняется в какие куки какие импуты сохраняються

рони 31.07.2020 16:49

AnteFil,
здесь работает?

AnteFil 31.07.2020 16:57

Цитата:

Сообщение от рони (Сообщение 527421)
AnteFil,
здесь работает?

Так а в коде даже не видно чёт типо этого
document.cookie = "user=John";

рони 31.07.2020 17:02

AnteFil,
работает или нет код из поста #2 ? вы его запускали(кнопка посмотреть), ввели данные, запустили пример снова(кнопка посмотреть)?

рони 31.07.2020 17:18

Цитата:

Сообщение от AnteFil
какие импуты сохраняються

сохраняются значения полей ввода с классом item(строка 10). при желании можно изменить на любой другой.


Часовой пояс GMT +3, время: 01:04.