亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

瀏覽器刷新后保留待辦事項結果

瀏覽器刷新后保留待辦事項結果

絕地無雙 2022-09-29 15:18:53
我創建了一個待辦事項應用程序來添加和刪除頁面上的任務。但是,我想在瀏覽器刷新時保留待辦事項結果。是否有可能像在數據庫或任何存儲上存儲數據一樣保存這些結果?任何想法,使這個保存數據??現在我在這里發布了完整的代碼!因為我之前不能在這里發布代碼let menu = document.querySelector(".bs");let btn1 = document.querySelector(".btn");let btn2 = document.querySelector(".btn3");  let irp = document.querySelector(".date");let inp = document.querySelector(".input");let bsd = document.querySelector(".sss");let brs  = document.querySelector(".marker");let addBr = () => {  btn1.addEventListener("click", addBr);  let br = document.createElement("DIV");  let dd  =  document.createElement("H1");  dd.innerHTML = (inp.value);  br.className = "red";  var bn = document.createElement("H1");  bn.innerHTML = (irp.value);    menu.appendChild(br);  br.appendChild(dd);    br.appendChild(bn);  if(  inp.value == "") {            br.remove();  }    else {       menu.appendChild(br);  }      if(  irp.value == "") {   dd.innerHTML = "Albenis";    }    else {       menu.appendChild(br);  }    let ttt = document.createElement("BUTTON");  ttt.className = "marker";  ttt.innerHTML = "Remove";  br.appendChild(ttt);    // This is the important change. Part of creating the .ttt element  // is setting up its event listeners!  ttt.addEventListener('click', () => br.remove());  };btn1.addEventListener("click", addBr);// Call `addBr` once to add the initial elementaddBr();<html><body><div class="bs"><input type="text" class="input"><input type="date" class="date"><button class="btn">Add</button></div></body></html>
查看完整描述

1 回答

?
精慕HU

TA貢獻1845條經驗 獲得超8個贊

使用本地存儲來讀取頁面加載時的項目,并在項目更改時寫入項目,就像在最終版本中一樣

要保留待辦事項條目,您需要將其存儲在數據庫中。這可以是網站中的本地數據庫,如本地存儲?;蛘撸枰獦嫿ㄒ粋€連接到數據庫的后端,并從那里發送和加載數據。

本地存儲示例:

const items = [{ name: "My Todo" }, { name: "My Todo 2" }];


const setItems = () => {

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

};


const getItems = () => {

  return JSON.parse(localStorage.getItem("items"));

};

包括您的代碼:


const getItems = () => {

  return JSON.parse(localStorage.getItem("items"));

};


const items = getItems() || [];


const setItems = () => {

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

};


let addBr = (item) => {

  let br = document.createElement("DIV");

  let dd  =  document.createElement("H1");

  dd.innerHTML = (item ? item.name : inp.value);

  br.className = "red";

  var bn = document.createElement("H1");

  bn.innerHTML = (item ? item.name : irp.value);


  if (!item) {

    items.push({ name: inp.value });

    setItems();

  }


  menu.appendChild(br);

  br.appendChild(dd);

    br.appendChild(bn);


  if(  inp.value == "") {

            br.remove();


  }


  else {

       menu.appendChild(br);


  }



  if(  irp.value == "") {

   dd.innerHTML = "Albenis";



  }


  else {

       menu.appendChild(br);


  }



  let ttt = document.createElement("BUTTON");

  ttt.className = "marker";

  ttt.innerHTML = "Remove";

  br.appendChild(ttt);


  // This is the important change. Part of creating the .ttt element

  // is setting up its event listeners!

  ttt.addEventListener('click', () => br.remove());

};


for (const item of items) {

  addBr(item);

}


btn1.addEventListener("click", () => addBr());



查看完整回答
反對 回復 2022-09-29
  • 1 回答
  • 0 關注
  • 110 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號