鱼C论坛

 找回密码
 立即注册
查看: 1579|回复: 7

为啥一按回车就刷新了页面,且本地存储数据也没更新

[复制链接]
发表于 2022-4-28 22:40:20 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.     <meta charset="UTF-8">
  5.     <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7.     <script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.js"></script>

  8.     <title>Document</title>
  9.     <style>
  10.         input{
  11.             display:inline-block;
  12.         }
  13.         .one{
  14.             width:500px;
  15.             height:400px;
  16.             background-color:yellow;
  17.         }
  18.         .two{
  19.             width:500px;
  20.             height:500px;
  21.             background-color:aqua;
  22.         }
  23.     </style>
  24. </head>
  25. <body>
  26.     <form>
  27.     <input id="usname" value="sd" >
  28.     <input id="checked"  type="checkbox">
  29.     <button>添加</button>
  30. </form>
  31. <div class="one">
  32.     <ol></ol>
  33. </div>
  34. <div class="two">
  35.     <ol></ol>
  36. </div>
  37.     <script>
  38.         var todolist=[
  39.             {
  40.                 title:'未来很美好',
  41.                 done:false,
  42.             },

  43.             {
  44.                 title:'美好的一天',
  45.                 done:false,
  46.             },
  47.         ];
  48.       
  49.         //
  50.         let ipt=document.querySelector('#usname');
  51.         const checked=document.querySelector('#checked');
  52.         const  btn=document.querySelector('button');
  53.         const one=document.querySelector('.one');
  54.         const two=document.querySelector('.two');
  55.         const ol1=one.querySelector('ol');
  56.         const  ol2=two.querySelector('ol');
  57.         console.log(ol1);
  58.         console.log(ol2);
  59.   
  60.   //
  61.         //  本地存储里只能存储字符串的数据格式,把我们的数组对象转换为字符串格式 JSON.stringfy();
  62.         localStorage.setItem('todo',JSON.stringify(todolist));
  63.         // localStorage.setItem('todo',todolist);
  64.         let data=localStorage.getItem('todo');
  65.         data=JSON.parse(data);

  66.           ipt.addEventListener('keydown',function(event){
  67.                 if(event.keyCode===13){
  68.                     //先获取本地存储的数据
  69.                  var local=getdate();
  70.                  //更新local数组中的数据(将新的数据追加进去);
  71.                  local.push({title:this.value,done:false});
  72.                  //把更新了的数组local存储给本都存储
  73.                  savadate(local);
  74.                 }
  75.               
  76.           });
  77.           //读取本地存储的数据
  78.           function  getdate(){
  79.               var data=localStorage.getItem('todolist');
  80.               if(data!==null){
  81.                   return JSON.parse(data);
  82.               }
  83.               else {
  84.                   return [];
  85.               }
  86.           }
  87.           //将数据存储进本地存储必须是字符串格式所以用JSON.stringify()转化。
  88.           //将数据从本地存储中取出来,需要将字符串转化为对象用JSON.parse();
  89.           //将更新的数组存储给本地存储及替换掉以前的就数组本地存储数据
  90.           function   savadate(data){
  91.               localStorage.setItem('todolist',JSON.stringfy(data));
  92.           }
  93. </script>
  94. </body>
  95. </html>
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-4-29 09:43:37 | 显示全部楼层
你了解
local.push({title:this.value,done:false});   这里的this是谁吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-29 10:35:09 | 显示全部楼层
按回车键自动刷新是form的特性
如果你一定要监听回车事件   就要取消这个特性  阻止form的自动提交
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-4-29 11:41:39 | 显示全部楼层
<form> 改成 <form onsubmit="return false;">
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-4-30 16:38:25 | 显示全部楼层
wp231957 发表于 2022-4-29 09:43
你了解
local.push({title:this.value,done:false});   这里的this是谁吗

文本框中的值啊,输入的文字
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-4-30 16:39:52 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-5-2 14:29:49 | 显示全部楼层

浏览器不会报错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-3 19:59:09 | 显示全部楼层

代码报错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-28 08:48

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表