繁体   English   中英

如何将用户提示输入永久添加到数组

[英]How to add user prompt input to an array permenantly

所以我试图添加一个提示,询问用户他们想向数组添加什么。 但是,每当我刷新页面时,它都会像仅在本地存储中一样被删除。 我想将此添加到实际代码中,以便它永久显示在页面中。 这是相关的代码:

<html>
<body>
<div class="ann" id="shadowbox">
    <h4>Latest Announcements</h4>
    <ul id="myUl"></ul>
  </div>
<button onclick="fc()">populate</button>

<script>
var announcements = ["test",]

for (i = 0; i < announcements.length; i++) {
  var li = document.createElement("li");
  var text = document.createTextNode(announcements[i]);
  li.appendChild(text);
  document.getElementById("myUl").appendChild(li);
}

    function fc() {
    var asdkz = prompt("What would you like to add?")
    announcements.push(asdkz);
    }
</script>

刷新后需要使用localStorage来保存数组的内容。 这是经过一些修改的解决方案:

<html>
<body>
<div class="ann" id="shadowbox">
    <h4>Latest Announcements</h4>
    <ul id="myUl"></ul>
  </div>
<button onclick="fc()">populate</button>

<script>
var announcements = (localStorage.getItem("list")) ? localStorage.getItem("list").split(",") : ["test"]
updateList();
function updateList(){
     document.getElementById("myUl").innerHTML = "";
     for (i = 0; i < announcements.length; i++) {
          var li = document.createElement("li");
          var text = document.createTextNode(announcements[i]);
          li.appendChild(text);
          document.getElementById("myUl").appendChild(li);
     }
}

function fc() {
    var asdkz = prompt("What would you like to add?")
    announcements.push(asdkz);
    localStorage.setItem("list",announcements);
    updateList();
}
</script>

暂无
暂无

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

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