[英]How to delete specific row in table in localstorage in dataTables
我想做的是删除该特定行上localstorage中的值,以便即使用户刷新页面也不会回来。
我的问题是它不会删除我要删除的特定行的localstorage值。
当前输出: http : //jsfiddle.net/4GP2h/75/
$(document).on('click', '.delete', function () {
var row = $(this).closest('tr');
oTable.row(row).remove().draw();
localStorage.removeItem(row);
});
不是很好,但是基于比较姓名,年龄和性别的有效示例:
$(document).on('click', '.delete', function () {
var row = $(this).closest('tr');
oTable.row(row).remove().draw();
var rowElements = row.find("td");
for (var i = 0; i < dataSet.length; i++) {
var equals = true;
for (var j = 0; j < 3; j++) {
if (dataSet[i][j] != rowElements[j].innerHTML) {
equals = false;
break;
}
}
if (equals) {
dataSet.splice(i, 1);
break;
}
}
localStorage.setItem('dataSet', JSON.stringify(dataSet));
});
您需要确认该值与密钥行一起存储。
LocalStorage是键值存储。 键和值都必须是字符串。 这里的行是DOM对象,可能不是键。
通常,对大型对象进行JSON.strigify处理并保存在本地存储中。 在这种情况下,您将需要解析该对象,删除您不需要的一个属性,并覆盖现有的键值对。
清除您需要调用localStorage.remove('key');的本地存储设置; 其中“键”是您要删除的值的键。 如果要清除所有设置,则需要调用localStorage.clear()方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.