本地存储待办事项清单的问题
创始人
2024-11-29 06:31:46
0次

问题描述: 如何使用本地存储来保存待办事项清单,并且可以添加、编辑和删除任务?

解决方法: 以下是使用JavaScript和HTML5的本地存储来保存待办事项清单的示例代码:

HTML部分:




    Todo List


    

Todo List

    JavaScript部分(script.js):

    // 从本地存储中获取待办事项列表
    function getTasks() {
        var tasks = localStorage.getItem('tasks');
        if (tasks) {
            return JSON.parse(tasks);
        } else {
            return [];
        }
    }
    
    // 将待办事项列表保存到本地存储
    function saveTasks(tasks) {
        localStorage.setItem('tasks', JSON.stringify(tasks));
    }
    
    // 显示待办事项列表
    function showTasks() {
        var taskList = document.getElementById('taskList');
        taskList.innerHTML = '';
    
        var tasks = getTasks();
        for (var i = 0; i < tasks.length; i++) {
            var task = tasks[i];
            var li = document.createElement('li');
            li.innerHTML = task;
            taskList.appendChild(li);
        }
    }
    
    // 添加新任务
    function addTask() {
        var taskInput = document.getElementById('taskInput');
        var task = taskInput.value.trim();
        if (task !== '') {
            var tasks = getTasks();
            tasks.push(task);
            saveTasks(tasks);
            showTasks();
            taskInput.value = '';
        }
    }
    
    // 编辑任务
    function editTask(index, newTask) {
        var tasks = getTasks();
        tasks[index] = newTask;
        saveTasks(tasks);
        showTasks();
    }
    
    // 删除任务
    function deleteTask(index) {
        var tasks = getTasks();
        tasks.splice(index, 1);
        saveTasks(tasks);
        showTasks();
    }
    
    // 页面加载完成后显示待办事项列表
    window.onload = function() {
        showTasks();
    };
    

    上述代码中,我们使用了localStorage对象来保存和获取待办事项列表。通过调用getTasks()函数可以获取当前的待办事项列表,saveTasks()函数用来保存待办事项列表到本地存储。showTasks()函数用于将待办事项列表显示在页面上。

    addTask()函数用于添加新的任务,editTask()函数用于编辑任务,deleteTask()函数用于删除任务。

    在页面加载完成后,我们通过调用showTasks()函数来显示已保存的待办事项列表。

    通过上述代码,你可以使用本地存储来保存待办事项清单,并进行添加、编辑和删除任务的操作。

    相关内容

    热门资讯

    前端-session、jwt 目录:   (1)session (2&#x...
    linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
    关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
    前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
    nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
    JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
    无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
    fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
    常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
    <C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...