我正在尝试将输入的电子邮件保存到 localStorage
中的文本区域。我在加载页面时看到占位符“您的 gmail 地址”,但是当我输入一个值并单击“保存”时,没有任何反应。我没有看到验证文本已保存的警报或控制台。我做错了什么?
<html>
<head><title>Extension Options</title></head>
<body>
<textarea id="user" style="margin-bottom: 4px; width: 250px; height: 20px">
</textarea><br />
<button id="save">Save</button>
<!--<button id="save">Clear</button>-->
<script type="text/javascript">
//check if "user" is in localStorage
if (localStorage["user"])
{
var user = localStorage["user"] ;
document.getElementById("user").value = user ;
alert("you are already a user")
}
else
{
document.getElementById("user").placeholder = "your gmail address" ;
console.log("user no found in localStorage")
}
//save entered gmail address
document.getElementById("save").addEventListener
{
"click", function ()
{
var user = document.getElementById("user").value ;
//localStorage["user"] = user ;
localStorage.setItem("user", user) ;
alert("gmail id saved") ;
console.log("gmail id saved")
} , false
}
</script>
</body>
</html>
最佳答案
您的 addEventListener 函数使用不当。应该这样使用:
document.getElementById("save").addEventListener("click", function ()
{
var user = document.getElementById("user").value ;
//localStorage["user"] = user ;
localStorage.setItem("user", user) ;
alert("gmail id saved") ;
console.log("gmail id saved")
} , false);
关于javascript - 如何从textarea保存到localStorage?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7892446/