HTML5 本地存储 - 多个删除项问题
HTML5 Local Storage - multiple removeItem issue
我正在摆弄HTML5本地存储(以前没有太多机会玩它(,我想我会做一些笔记记录器之类的事情。
我有一个函数可以读取本地存储中的内容并将其显示在页面上,在您尝试删除多个条目之前,该功能工作正常。
function renderNotes() {
$(currentNotes).html('');
Object.keys(localStorage);
Object.keys(localStorage).length;
$.each(localStorage, function(key, value){
$(currentNotes).append('<div class="note"><div class="noteHeader"><p class="noteName">' + key + '</p></div><div class="noteContent"><p>' + value + '</p></div></div>');
});
alert('notes rendered');
}
转到 JSFiddle: http://jsfiddle.net/AThomas92/MSxQ9/3/并尝试通过单击表单下方的粗体标题删除一些条目 - 第一次它工作正常,但之后它根本不起作用。
奇怪的是,当您添加新注释时也会调用该函数,并且它会一遍又一遍地工作。
有什么想法吗?
提前感谢,
灰
由于元素是动态重新呈现的,因此需要使用事件委派
// DELETE NOTE
$(document).on('click', '.noteName', function(){
var noteName = $(this).html();
localStorage.removeItem(noteName);
renderNotes();
});
演示:小提琴
除了 Arun P Johny 的回答之外,这里有一个使用 jquery 的提示:
而不是像下面这样使用 jquery 对象:
var saveBtn = $('#saveBtn');
$(saveBtn).click(function(){
// Code
});
像这样使用它:
var saveBtn = $('#saveBtn');
saveBtn.click(function(){
// Code
});
甚至更好(记住它是一个jquery对象(:
var $saveBtn = $('#saveBtn');
$saveBtn.click(function(){
// Code
});
相关文章:
- 关于使用Animate.css向和项添加和删除动画类的问题
- 删除时出现Javascript链表问题
- Small Javascript从动态表单中删除多个元素的问题
- 使用javascript删除元素时出现的问题
- Javascript/JQuery删除代码中的父TR问题
- jQuery使用.of()删除事件处理程序时出现的问题
- 骨干.js - 从推文中删除模型时出现奇怪的问题
- 使用 Javascript 动态删除行.我的代码有什么问题
- 使用javascript从字符串中删除额外或特殊字符时遇到问题
- NetSuite行项目删除内部循环问题
- 使用jquery从URL中删除查询字符串(处理问题)
- 使用数据库中的图像填充dropzone.js删除图像的问题
- 正在删除单击问题上的活动类
- 使用jquery删除和获取html元素时遇到问题
- 问题在于克隆、拼接、删除、追加 jquery 函数
- 拉斐尔的问题和删除 svg 中的对象
- 从数组及其父数组中删除拼接 - 奇怪的问题
- HTML5拖放;Internet Explorer中的删除问题(无法访问dataTransfer属性)
- Jquery UI对话框删除问题
- 用jquery和复选框在数组中添加和删除问题