Как кэшировать текстовую область? - PullRequest
0 голосов
/ 27 февраля 2019

Как мне поступить с кэшированием текста в текстовой области?

Используя Javascript, я в настоящее время могу создать текстовую область:

var taid;

    var taid = document.createElement("textarea");
    taid.setAttribute("src", "");
    taid.style.width = "100%";
    taid.style.height = "100%";
    taid.style.border = "0px";
    taid.style.background = "lightblue";

    document.getElementById("sheet").appendChild(taid);

Я довольно новичок в Javascript,Так что я не знаю многих функций.Я хотел бы использовать JSON stringify и кэшировать все значения в текстовой области, чтобы значения не терялись при обновлении страницы.Но любой метод в javascript был бы великолепен.

Спасибо

Ответы [ 2 ]

0 голосов
/ 27 февраля 2019

Вы можете сохранить текст в базе данных или в локальном хранилище браузера и получить его при обновлении.Это сохранит текст в текстовой области в localstorage при каждом событии keyup, и когда окно загружается или перезагружается, оно извлекает данные из localStorage и сохраняет их в переменной данных.Эта переменная будет значением текстовой области

var data;
window.onload = function() {
  data = localStorage.getItem('data');
}
var taid;

var taid = document.createElement("textarea");
taid.setAttribute("src", "");
taid.setAttribute("onkeyup", "a()")
taid.style.width = "100%";
taid.style.height = "100%";
taid.style.border = "0px";
taid.style.background = "lightblue";
taid.value = data || "";

document.getElementById("sheet").appendChild(taid);

function a() {
  localStorage.setItem("data", taid.value);

}
<body id="sheet"></body>
0 голосов
/ 27 февраля 2019

Просто добавьте onchange к textarea и сохраните в localStorage, затем загрузите его обратно, когда страница загрузится:

taid.addEventListener("change", () => {
    var text = taid.value;
    localStorage.setItem("text", text);
});

window.onload = () => {
    var savedText = localStorage.getItem("text") || "";
    taid.value = savedText;
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...