繁体   English   中英

如何将 textarea 中的文本保存到 localstorage

[英]How to save text within a textarea to localstorage

我需要使用 localStorage 在 textarea 中保存文本。

这是 HTML 代码:

 .textarea { background: none; color: lime; font-size: 1.25rem; border: 0px; width: 100%; height: 100vh; display: inline-block; outline: none; resize: none; text-align: center; }
 <textarea class="textarea" id="notes" value="Type something!"> Delete this and start typing!</textarea>

如何在本地保存文本? 搜索并没有让我到任何地方。

听起来 localStorage 是您用例的更好选择。

也就是说,您可以通过以下方式获取 textarea 值:

document.getElementById("notes").value

之后,正如您在此答案中看到的那样,您可以使用

function createCookie(name, value, days) {
    var expires;
    if (days) {
        var date = new Date();
        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
        expires = "; expires=" + date.toGMTString();
    }
    else {
        expires = "";
    }
    document.cookie = name + "=" + value + expires + "; path=/";
}

总而言之,您可以使用以下内容创建您的 cookie:

let value = document.getElementById("notes").value;
createCookie('textareaValue', value, 0);

更新

由于您将问题更新为仅使用 localStorage,因此您可以使用以下命令:

let value = document.getElementById("notes").value;
localStorage.setItem("textareaValue", value);

您可以通过以下方式检索和显示值:

let value = localStorage.getItem('textareaValue');
document.getElementById("notes").value = value;

我假设,您只想手动修改document.cookie

document.cookie = "mytext=stuff"
// this will add "mytext" key to page cookies and assign "stuff"

document.cookie = "mytext=newstuff"
// this will modify your key, cookies works just like associative array

document.cookies = "mytext=;max-age=0"
// this will delete your cookie by setting its max age to 0, so cookie is being considered expired now

Stack Overflow 在这个主题上有一个很好的主题: How to get and set cookies in JavaScript

为了从<textarea>获取文本,您可能需要使用my_html_element.value ,其中my_html_element是 HTML 节点。

以下语法也可能有用:

let variable = "some text";
`string${variable}` // stringsome text

假设您在 html 中使用 Javascript,这里已经有一些可用于堆栈溢出的内容:

看这里

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM