【发布时间】:2017-02-11 04:57:21
【问题描述】:
我是 Javascript 新手,我有一个用于 html 表的 Javascript,用户可以编辑它以显示或隐藏 html 表中的列。脚本工作正常。但问题是当页面刷新时,它会显示 html 表中的所有列。它不记得最后的设置。
我希望能够存储脚本中上次操作的设置,以便在刷新或加载页面时记住上次设置。我不知道如何实现这一点,如果你能告诉我如何做到这一点,我将不胜感激?
这里是 Javascript:
查看 jsfiddle https://jsfiddle.net/b9chris/HvA4s/ 的工作示例
<script>
$(document).ready(function(){
$('#edit').click(function() {
var headers = $('#table th').map(function() {
var th = $(this);
return {
text: th.text(),
shown: th.css('display') != 'none'
};
});
var h = ['<div id=tableEditor><button id=done>Done</button><table><thead><tr>'];
$.each(headers, function() {
h.push('<th><input type=checkbox',
(this.shown ? ' checked ' : ' '),
'/> ',
this.text,
'</th>');
});
h.push('</tr></thead></table></div>');
$('body').append(h.join(''));
$('#done').click(function() {
var showHeaders = $('#tableEditor input').map(function() { return this.checked; });
$.each(showHeaders, function(i, show) {
var cssIndex = i + 1;
var tags = $('#table th:nth-child(' + cssIndex + '), #table td:nth-child(' + cssIndex + ')');
if (show)
tags.show();
else
tags.hide();
});
$('#tableEditor').remove();
return false;
});
return false;
});
});
</script>
【问题讨论】:
-
看看
document.cookie。 w3schools.com/js/js_cookies.asp :) -
这不是原始的 JavaScript,您正在使用一些库(可能是 jQuery)。如果您想操作 cookie,只需按照相同的路径找到一个 jQuery 插件。
-
正确我使用的是 jquery 1.9.1,
标签: javascript html cookies html-table