使用JQuery和LocalStorage

时间:2015-04-25 22:29:36

标签: javascript jquery arrays json list

大家好我正在尝试使用JQuery和本地存储创建TODO列表。

  1. 如果localstorage已经有值,那么它们应该填充 页面加载(关闭窗口并重新打开保留 “待办事项的”)
  2. 如果列表中已存在某个项目,则显示一条控制台消息,注明副本(使用$ .inArray)
  3. 用户应该能够添加和删除项目并自动保存更改(使用拼接)
  4. 这是我到目前为止所做的:

    <body>
      <h1>TODO List</h1>
      <input id="input" type="text"><button id="add">Add</button>
      <ul id="list"></ul>
    </body>
    
    <script src="http://code.jquery.com/jquery-2.1.3.min.js"></script>
    <script>
    if(window.localStorage !== undefined){
    var storeData = { };
    var input = $("#input").val();
    $("#add").click(function (){
      localStorage.setItem("input", JSON.stringify(input));
    });
    };
    
    $(document).ready(function(){
      var data = JSON.parse(localStorage.getItem("storeData"));
      $("#list").html(data);
    });
    </script>
    

    代码中有问题吗?如何使用$ .inArray添加拼接并检查重复项?感谢。

1 个答案:

答案 0 :(得分:0)

您设置为一个键input并从另一个键storeData检索

尝试更改

localStorage.setItem("input", JSON.stringify(input));

localStorage.setItem("storeData", JSON.stringify(input));

如果您要存储阵列,则需要重新考虑add功能。现在它将存储的是页面加载时输入的值...这可能是空的。而且你的代码中没有可以使用的数组

我建议您查看todoMVC

中使用的代码